diff --git a/.env b/.env new file mode 100644 index 0000000..6558419 --- /dev/null +++ b/.env @@ -0,0 +1,2 @@ +HTTPS=true +HOST=0.0.0.0 \ No newline at end of file diff --git a/.eslintignore b/.eslintignore new file mode 100644 index 0000000..77dcfae --- /dev/null +++ b/.eslintignore @@ -0,0 +1 @@ +react-app-env.d.ts diff --git a/.eslintrc.js b/.eslintrc.js new file mode 100644 index 0000000..7ad0549 --- /dev/null +++ b/.eslintrc.js @@ -0,0 +1,56 @@ +const path = require("path"); + +module.exports = { + root: true, + parser: "@typescript-eslint/parser", + plugins: ["react", "react-hooks", "@typescript-eslint", "jsx-a11y"], + env: { + browser: true, + jest: true, + es6: true + }, + extends: [ + "@hipo/eslint-config-base", + "@hipo/eslint-config-react", + "@hipo/eslint-config-typescript", + "plugin:jsx-a11y/recommended", + "prettier" + ], + parserOptions: { + project: path.resolve(__dirname, "./tsconfig.json"), + tsconfigRootDir: __dirname, + ecmaVersion: 2018, + sourceType: "module", + ecmaFeatures: { + jsx: true + }, + createDefaultProgram: true + }, + settings: { + react: { + version: "detect" + }, + "import/resolver": { + typescript: {} + } + }, + globals: {}, + rules: { + "react/jsx-uses-react": "off", + "react/react-in-jsx-scope": "off" + }, + overrides: [ + { + files: [".eslintrc.js"], + rules: { + "@typescript-eslint/no-var-requires": "off" + } + }, + { + files: ["*.d.ts"], + rules: { + "newline-after-var": "off" + } + } + ] +}; diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..45a890b --- /dev/null +++ b/.gitignore @@ -0,0 +1,46 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules +/.pnp +.pnp.js + +# editors +.*.swp +.*.swo + +# testing +/coverage + +# production +/build + +# misc +.DS_Store + +npm-debug.log* +yarn-debug.log* +yarn-error.log* +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules +/.pnp +.pnp.js + +# testing +/coverage + +# production +/build + +# misc +.DS_Store +.env.local +.env.development.local +.env.test.local +.env.production.local + +npm-debug.log* +yarn-debug.log* +yarn-error.log* diff --git a/.husky/pre-commit b/.husky/pre-commit new file mode 100755 index 0000000..1671b28 --- /dev/null +++ b/.husky/pre-commit @@ -0,0 +1,6 @@ +#!/bin/sh +. "$(dirname "$0")/_/husky.sh" + +npx lint-staged +echo "type-checking..." +./node_modules/.bin/tsc --noEmit \ No newline at end of file diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 0000000..271b936 --- /dev/null +++ b/.prettierignore @@ -0,0 +1 @@ +_global-colors.scss \ No newline at end of file diff --git a/.prettierrc.js b/.prettierrc.js new file mode 100644 index 0000000..ff01b2f --- /dev/null +++ b/.prettierrc.js @@ -0,0 +1,12 @@ +module.exports = { + printWidth: 90, + tabWidth: 2, + useTabs: false, + semi: true, + singleQuote: false, + jsxSingleQuote: false, + trailingComma: "none", + bracketSpacing: false, + bracketSameLine: true, + arrowParens: "always" +}; diff --git a/.stylelintignore b/.stylelintignore new file mode 100644 index 0000000..34d8c01 --- /dev/null +++ b/.stylelintignore @@ -0,0 +1,3 @@ +_global-colors.scss +**/*.ts +**/*.tsx diff --git a/.stylelintrc.json b/.stylelintrc.json new file mode 100644 index 0000000..1ac7915 --- /dev/null +++ b/.stylelintrc.json @@ -0,0 +1,17 @@ +{ + "extends": ["@hipo/stylelint-config-base"], + "plugins": [ + "stylelint-order", + "stylelint-scss", + "stylelint-no-unsupported-browser-features" + ], + "rules": { + "value-list-comma-newline-after": null, + "font-family-name-quotes": null, + "scss/at-mixin-argumentless-call-parentheses": null, + "selector-class-pattern": null, + "no-descending-specificity": null, + "color-hex-case": null, + "color-no-hex": null + } +} diff --git a/BUILD.md b/BUILD.md new file mode 100644 index 0000000..2bb6427 --- /dev/null +++ b/BUILD.md @@ -0,0 +1,26 @@ +# Pera Web Wallet + +## Development + +This repo was created with [Create React App](https://github.com/facebook/create-react-app). Therefore, the usual react-scripts are available in this project. + +Recommended system versions + +- `node 14.x` +- `npm 8.x` + +### Install dependencies + +- `npm install` + +### Start the development environment + +- `npm start` + +### Husky and lint-staged + +[Husky](https://github.com/typicode/husky) is configured with [lint-staged](https://github.com/okonet/lint-staged) to run ESLint, Stylelint and Prettier on the staged files, and then type-check the application before committing your changes. + +### Versioning + +We follow [SemVer](https://semver.org/) convention to update the version for each release. diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..71ee594 --- /dev/null +++ b/LICENSE @@ -0,0 +1,3 @@ +© Pera Wallet, LDA, 2023. + +You are granted a limited non-exclusive license to inspect and study the code in this repository. There is no associated right to reproduction granted under this license except where reproduction is necessary for inspection and study of the code. You may not otherwise reproduce, distribute, modify or create derivative works of the code without our prior consent. All other rights are expressly reserved. \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..2788913 --- /dev/null +++ b/README.md @@ -0,0 +1,17 @@ +# Pera Web Wallet + +## Overview +Welcome to the code that powers Pera Web Wallet! This repo will always contain the source code for the latest publicly available Pera Web Wallet version [web.perawallet.app](https://web.perawallet.app). We want to make sure that we focus not only on great features and experiences but also security, transparency, and community involvement. + +Other than version numbers changing, news and other important release information (like release notes) will not be posted here. To stay up to date on the latest news, features, release notes, tutorials, and more, please check out [perawallet.app](https://perawallet.app). + +## Contributing +While the Algorand community is always welcome to contribute, please note that new feature development happens outside of this repo which means that open issues/PRs might not see a lot of activity. We do this in order to make sure that all code that is pushed here has passed our rigorous QA testing and high security standards. That being said, we’ll do our best to take note of feature requests or additions - some of which we might potentially incorporate into our codebase via our main development pipeline. + +If you simply need help, want to report a bug, or want to suggest a feature, the best place to do so is via our offical community channels: + +- [Discord](https://discord.gg/gR2UdkCTXQ) +- [Reddit](https://www.reddit.com/r/PeraWallet/) +- [Telegram](https://t.me/PeraWallet) + +And if you need support, our support knowledgebase and contact channels are here: [perawallet.app/support](https://perawallet.app/support) diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..62d8ce0 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,43083 @@ +{ + "name": "pera-wallet-web", + "version": "1.0.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "pera-wallet-web", + "version": "1.0.0", + "dependencies": { + "@hipo/react-ui-toolkit": "1.0.1", + "algosdk": "1.23.2", + "date-fns": "2.29.3", + "date-fns-tz": "1.3.7", + "env-cmd": "10.1.0", + "lottie-react": "2.3.1", + "process": "0.11.10", + "react": "17.0.2", + "react-dom": "17.0.2", + "react-modal": "3.16.1", + "react-qrcode-logo": "2.8.0", + "react-router-dom": "6.4.3", + "react-scripts": "4.0.3", + "react-tooltip": "4.5.0", + "scrypt-async": "2.0.1", + "tweetnacl": "1.0.3", + "web-vitals": "3.0.4", + "webfontloader": "1.6.28" + }, + "devDependencies": { + "@hipo/eslint-config-base": "4.2.1", + "@hipo/eslint-config-react": "2.3.0", + "@hipo/eslint-config-typescript": "1.2.0", + "@hipo/stylelint-config-base": "3.2.0", + "@types/jest": "29.2.3", + "@types/node": "16.11.36", + "@types/react": "17.0.45", + "@types/react-dom": "17.0.17", + "@types/react-modal": "3.13.1", + "@types/react-router-dom": "5.3.3", + "@types/scrypt-async": "1.3.2", + "@types/webfontloader": "1.6.35", + "@typescript-eslint/parser": "5.43.0", + "buffer": "6.0.3", + "classnames": "2.3.2", + "crypto-browserify": "3.12.0", + "eslint-config-prettier": "8.5.0", + "eslint-import-resolver-typescript": "2.5.0", + "fake-indexeddb": "4.0.0", + "husky": "8.0.2", + "lint-staged": "13.0.3", + "prettier": "2.7.1", + "react-error-overlay": "6.0.9", + "sass": "1.56.1", + "stream-browserify": "3.0.0", + "stylelint": "14.15.0", + "stylelint-no-unsupported-browser-features": "6.0.1", + "stylelint-order": "5.0.0", + "stylelint-scss": "4.3.0", + "typescript": "4.8.4" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@ampproject/remapping/node_modules/@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dependencies": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "dependencies": { + "@babel/highlight": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.1.tgz", + "integrity": "sha512-EWZ4mE2diW3QALKvDMiXnbZpRvlj+nayZ112nK93SnhqOtpdsbVD4W+2tEoT3YNBAG9RBR0ISY758ZkOgsn6pQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.2.tgz", + "integrity": "sha512-w7DbG8DtMrJcFOi4VrLm+8QM4az8Mo+PuLBKLp2zrYRCow8W/f9xiXm5sN53C8HksCyDQwCKha9JiDoIyPjT2g==", + "dependencies": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.2", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-module-transforms": "^7.20.2", + "@babel/helpers": "^7.20.1", + "@babel/parser": "^7.20.2", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.2", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.20.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.4.tgz", + "integrity": "sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==", + "dependencies": { + "@babel/types": "^7.20.2", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", + "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", + "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", + "dependencies": { + "@babel/helper-explode-assignable-expression": "^7.18.6", + "@babel/types": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz", + "integrity": "sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==", + "dependencies": { + "@babel/compat-data": "^7.20.0", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.20.2.tgz", + "integrity": "sha512-k22GoYRAHPYr9I+Gvy2ZQlAe5mGy8BqWst2wRt8cwIufWTxrsVshhIBvYNqC80N0GSFWTsqRVexOtfzlgOEDvA==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-member-expression-to-functions": "^7.18.9", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-replace-supers": "^7.19.1", + "@babel/helper-split-export-declaration": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.19.0.tgz", + "integrity": "sha512-htnV+mHX32DF81amCDrwIDr8nrp1PTm+3wfBN9/v8QJOLEioOCOG7qNyq0nHeFiWbT3Eb7gsPwEmV64UCQ1jzw==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "regexpu-core": "^5.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", + "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", + "dependencies": { + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0-0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-explode-assignable-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", + "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", + "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", + "dependencies": { + "@babel/template": "^7.18.10", + "@babel/types": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz", + "integrity": "sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg==", + "dependencies": { + "@babel/types": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz", + "integrity": "sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA==", + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", + "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", + "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", + "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-wrap-function": "^7.18.9", + "@babel/types": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.19.1.tgz", + "integrity": "sha512-T7ahH7wV0Hfs46SFh5Jz3s0B6+o8g3c+7TMxu7xKfmHikg7EAZ3I2Qk9LFhjxXq8sL7UkP5JflezNwoZa8WvWw==", + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-member-expression-to-functions": "^7.18.9", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/traverse": "^7.19.1", + "@babel/types": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "dependencies": { + "@babel/types": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", + "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", + "dependencies": { + "@babel/types": "^7.20.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", + "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.19.0.tgz", + "integrity": "sha512-txX8aN8CZyYGTwcLhlk87KRqncAzhh5TpQamZUa0/u3an36NtDpUP6bQgBCBcLeBs09R/OwQu3OjK0k/HwfNDg==", + "dependencies": { + "@babel/helper-function-name": "^7.19.0", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.19.0", + "@babel/types": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.1.tgz", + "integrity": "sha512-J77mUVaDTUJFZ5BpP6mMn6OIl3rEWymk2ZxDBQJUG3P+PbmyMcF3bYWvz0ma69Af1oobDqT/iAsvzhB58xhQUg==", + "dependencies": { + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/parser": { + "version": "7.20.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.3.tgz", + "integrity": "sha512-OP/s5a94frIPXwjzEcv5S/tpQfc6XhxYUnmWpgdqMWGgYCuErA3SzozaRAMQgSZWKeTJxht9aWAkUY+0UzvOFg==", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", + "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.18.9.tgz", + "integrity": "sha512-AHrP9jadvH7qlOj6PINbgSuphjQUAK7AOT7DPjBo9EHoLhQTnnK5u45e1Hd4DbSQEO9nqPWtQ89r+XEOWFScKg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", + "@babel/plugin-proposal-optional-chaining": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-proposal-async-generator-functions": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.1.tgz", + "integrity": "sha512-Gh5rchzSwE4kC+o/6T8waD0WHEQIsDmjltY8WnWRXHUdH8axZhuH86Ov9M72YhJfDrZseQwuuWaaIT/TmePp3g==", + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/helper-remap-async-to-generator": "^7.18.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", + "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-static-block": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.6.tgz", + "integrity": "sha512-+I3oIiNxrCpup3Gi8n5IGMwj0gOCAjcJUSQEcotNnCCPMEnixawOQ+KeJPlgfjzx+FKQ1QSyZOWe7wmoJp7vhw==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-proposal-decorators": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.20.2.tgz", + "integrity": "sha512-nkBH96IBmgKnbHQ5gXFrcmez+Z9S2EIDKDQGp005ROqBigc88Tky4rzCnlP/lnlj245dCEQl4/YyV0V1kYh5dw==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.20.2", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-replace-supers": "^7.19.1", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/plugin-syntax-decorators": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-dynamic-import": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", + "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-export-namespace-from": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", + "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-json-strings": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", + "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.18.9.tgz", + "integrity": "sha512-128YbMpjCrP35IOExw2Fq+x55LMP42DzhOhX2aNNIdI9avSWl2PI0yuBWarr3RYpZBSPtabfadkH2yeRiMD61Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", + "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-numeric-separator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", + "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.2.tgz", + "integrity": "sha512-Ks6uej9WFK+fvIMesSqbAto5dD8Dz4VuuFvGJFKgIGSkJuRGcrwGECPA1fDgQK3/DbExBJpEkTeYeB8geIFCSQ==", + "dependencies": { + "@babel/compat-data": "^7.20.1", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.20.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-optional-catch-binding": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", + "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-optional-chaining": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.18.9.tgz", + "integrity": "sha512-v5nwt4IqBXihxGsW2QmCWMDS3B3bzGIk/EQVZz2ei7f3NJl8NzAJVvUmpDW5q1CRNY+Beb/k58UAH1Km1N411w==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-methods": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", + "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.18.6.tgz", + "integrity": "sha512-9Rysx7FOctvT5ouj5JODjAFAkgGoudQuLPamZb0v1TGLpapdNaftzifU8NTWQm0IRjqoYypdrSmyWgkocDQ8Dw==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-unicode-property-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-decorators": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.19.0.tgz", + "integrity": "sha512-xaBZUEDntt4faL1yN8oIFlhfXeQAWJW7CLKYsHTUqriCUbj8xOra8bfxxKGi/UwExPFBuPdH4XfHc9rGQhrVkQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-flow": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.18.6.tgz", + "integrity": "sha512-LUbR+KNTBWCUAqRG9ex5Gnzu2IOkt8jRJbHHXFT9q+L9zm7M/QQbEqXyw1n1pohYvOyWC8CjeyjrSaIwiYjK7A==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz", + "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz", + "integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz", + "integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz", + "integrity": "sha512-9S9X9RUefzrsHZmKMbDXxweEH+YlE8JJEuat9FdvW9Qh1cw7W64jELCtWNkPBPX5En45uy28KGvA/AySqUh8CQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz", + "integrity": "sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag==", + "dependencies": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-remap-async-to-generator": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", + "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.20.2.tgz", + "integrity": "sha512-y5V15+04ry69OV2wULmwhEA6jwSWXO1TwAtIwiPXcvHcoOQUqpyMVd2bDsQJMW8AurjulIyUV8kDqtjSwHy1uQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.20.2.tgz", + "integrity": "sha512-9rbPp0lCVVoagvtEyQKSo5L8oo0nQS/iif+lwlAz29MccX2642vWDlSZK+2T2buxbopotId2ld7zZAzRfz9j1g==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-replace-supers": "^7.19.1", + "@babel/helper-split-export-declaration": "^7.18.6", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-classes/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.18.9.tgz", + "integrity": "sha512-+i0ZU1bCDymKakLxn5srGHrsAPRELC2WIbzwjLhHW9SIE1cPYkLCL0NlnXMZaM1vhfgA2+M7hySk42VBvrkBRw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.2.tgz", + "integrity": "sha512-mENM+ZHrvEgxLTBXUiQ621rRXZes3KWUv6NdQlrnr1TkWVw+hUjQBZuP2X32qKlrlG2BzgR95gkuCRSkJl8vIw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", + "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", + "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", + "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-flow-strip-types": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.19.0.tgz", + "integrity": "sha512-sgeMlNaQVbCSpgLSKP4ZZKfsJVnFnNQlUSk6gPYzR/q7tzCgQF2t8RBKAP6cKJeZdveei7Q7Jm527xepI8lNLg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/plugin-syntax-flow": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.18.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz", + "integrity": "sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", + "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", + "dependencies": { + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-function-name": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", + "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", + "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.19.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.19.6.tgz", + "integrity": "sha512-uG3od2mXvAtIFQIh0xrpLH6r5fpSQN04gIVovl+ODLdUMANokxQLZnPBHcjmv3GxRjnqwLuHvppjjcelqUFZvg==", + "dependencies": { + "@babel/helper-module-transforms": "^7.19.6", + "@babel/helper-plugin-utils": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.19.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.19.6.tgz", + "integrity": "sha512-8PIa1ym4XRTKuSsOUXqDG0YaOlEuTVvHMe5JCfgBMOtHvJKw/4NGovEGN33viISshG/rZNVrACiBmPQLvWN8xQ==", + "dependencies": { + "@babel/helper-module-transforms": "^7.19.6", + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/helper-simple-access": "^7.19.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.19.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.19.6.tgz", + "integrity": "sha512-fqGLBepcc3kErfR9R3DnVpURmckXP7gj7bAlrTQyBxrigFqszZCkFkcoxzCp2v32XmwXLvbw+8Yq9/b+QqksjQ==", + "dependencies": { + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-module-transforms": "^7.19.6", + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/helper-validator-identifier": "^7.19.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", + "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", + "dependencies": { + "@babel/helper-module-transforms": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.19.1.tgz", + "integrity": "sha512-oWk9l9WItWBQYS4FgXD4Uyy5kq898lvkXpXQxoJEY1RnvPk4R/Dvu2ebXU9q8lP+rlMwUQTFf2Ok6d78ODa0kw==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.19.0", + "@babel/helper-plugin-utils": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", + "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", + "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-replace-supers": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.20.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.20.3.tgz", + "integrity": "sha512-oZg/Fpx0YDrj13KsLyO8I/CX3Zdw7z0O9qOd95SqcoIzuqy/WTGWvePeHAnZCN54SfdyjHcb1S30gc8zlzlHcA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", + "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-constant-elements": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.20.2.tgz", + "integrity": "sha512-KS/G8YI8uwMGKErLFOHS/ekhqdHhpEloxs43NecQHVgo2QuQSyJhGIY1fL8UGl9wy5ItVwwoUL4YxVqsplGq2g==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-display-name": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz", + "integrity": "sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.19.0.tgz", + "integrity": "sha512-UVEvX3tXie3Szm3emi1+G63jyw1w5IcMY0FSKM+CRnKRI5Mr1YbCNgsSTwoTwKphQEG9P+QqmuRFneJPZuHNhg==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/plugin-syntax-jsx": "^7.18.6", + "@babel/types": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-development": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.18.6.tgz", + "integrity": "sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA==", + "dependencies": { + "@babel/plugin-transform-react-jsx": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-pure-annotations": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.18.6.tgz", + "integrity": "sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.6.tgz", + "integrity": "sha512-poqRI2+qiSdeldcz4wTSTXBRryoq3Gc70ye7m7UD5Ww0nE29IXqMl6r7Nd15WBgRd74vloEMlShtH6CKxVzfmQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "regenerator-transform": "^0.15.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", + "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime": { + "version": "7.19.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.19.6.tgz", + "integrity": "sha512-PRH37lz4JU156lYFW1p8OxE5i7d6Sl/zV58ooyr+q1J1lnQPyg5tIiXlIwNVhJaY4W3TmOtdc8jqdXQcB1v5Yw==", + "dependencies": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.19.0", + "babel-plugin-polyfill-corejs2": "^0.3.3", + "babel-plugin-polyfill-corejs3": "^0.6.0", + "babel-plugin-polyfill-regenerator": "^0.4.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", + "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.19.0.tgz", + "integrity": "sha512-RsuMk7j6n+r752EtzyScnWkQyuJdli6LdO5Klv8Yx0OfPVTcQkIUfS8clx5e9yHXzlnhOZF3CbQ8C2uP5j074w==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", + "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", + "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", + "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.20.2.tgz", + "integrity": "sha512-jvS+ngBfrnTUBfOQq8NfGnSbF9BrqlR6hjJ2yVxMkmO5nL/cdifNbI30EfjRlN4g5wYWNnMPyj5Sa6R1pbLeag==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.20.2", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-typescript": "^7.20.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", + "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", + "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.20.2.tgz", + "integrity": "sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg==", + "dependencies": { + "@babel/compat-data": "^7.20.1", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-async-generator-functions": "^7.20.1", + "@babel/plugin-proposal-class-properties": "^7.18.6", + "@babel/plugin-proposal-class-static-block": "^7.18.6", + "@babel/plugin-proposal-dynamic-import": "^7.18.6", + "@babel/plugin-proposal-export-namespace-from": "^7.18.9", + "@babel/plugin-proposal-json-strings": "^7.18.6", + "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", + "@babel/plugin-proposal-numeric-separator": "^7.18.6", + "@babel/plugin-proposal-object-rest-spread": "^7.20.2", + "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", + "@babel/plugin-proposal-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-private-methods": "^7.18.6", + "@babel/plugin-proposal-private-property-in-object": "^7.18.6", + "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.20.0", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.18.6", + "@babel/plugin-transform-async-to-generator": "^7.18.6", + "@babel/plugin-transform-block-scoped-functions": "^7.18.6", + "@babel/plugin-transform-block-scoping": "^7.20.2", + "@babel/plugin-transform-classes": "^7.20.2", + "@babel/plugin-transform-computed-properties": "^7.18.9", + "@babel/plugin-transform-destructuring": "^7.20.2", + "@babel/plugin-transform-dotall-regex": "^7.18.6", + "@babel/plugin-transform-duplicate-keys": "^7.18.9", + "@babel/plugin-transform-exponentiation-operator": "^7.18.6", + "@babel/plugin-transform-for-of": "^7.18.8", + "@babel/plugin-transform-function-name": "^7.18.9", + "@babel/plugin-transform-literals": "^7.18.9", + "@babel/plugin-transform-member-expression-literals": "^7.18.6", + "@babel/plugin-transform-modules-amd": "^7.19.6", + "@babel/plugin-transform-modules-commonjs": "^7.19.6", + "@babel/plugin-transform-modules-systemjs": "^7.19.6", + "@babel/plugin-transform-modules-umd": "^7.18.6", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.19.1", + "@babel/plugin-transform-new-target": "^7.18.6", + "@babel/plugin-transform-object-super": "^7.18.6", + "@babel/plugin-transform-parameters": "^7.20.1", + "@babel/plugin-transform-property-literals": "^7.18.6", + "@babel/plugin-transform-regenerator": "^7.18.6", + "@babel/plugin-transform-reserved-words": "^7.18.6", + "@babel/plugin-transform-shorthand-properties": "^7.18.6", + "@babel/plugin-transform-spread": "^7.19.0", + "@babel/plugin-transform-sticky-regex": "^7.18.6", + "@babel/plugin-transform-template-literals": "^7.18.9", + "@babel/plugin-transform-typeof-symbol": "^7.18.9", + "@babel/plugin-transform-unicode-escapes": "^7.18.10", + "@babel/plugin-transform-unicode-regex": "^7.18.6", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.20.2", + "babel-plugin-polyfill-corejs2": "^0.3.3", + "babel-plugin-polyfill-corejs3": "^0.6.0", + "babel-plugin-polyfill-regenerator": "^0.4.1", + "core-js-compat": "^3.25.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-react": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.18.6.tgz", + "integrity": "sha512-zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-transform-react-display-name": "^7.18.6", + "@babel/plugin-transform-react-jsx": "^7.18.6", + "@babel/plugin-transform-react-jsx-development": "^7.18.6", + "@babel/plugin-transform-react-pure-annotations": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-typescript": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.18.6.tgz", + "integrity": "sha512-s9ik86kXBAnD760aybBucdpnLsAt0jK1xqJn2juOn9lkOvSHV60os5hxoVJsPzMQxvnUJFAlkont2DvvaYEBtQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-transform-typescript": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.1.tgz", + "integrity": "sha512-mrzLkl6U9YLF8qpqI7TB82PESyEGjm/0Ly91jG575eVxMMlb8fYfOXFZIJ8XfLrJZQbm7dlKry2bJmXBUEkdFg==", + "dependencies": { + "regenerator-runtime": "^0.13.10" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/runtime-corejs3": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.20.1.tgz", + "integrity": "sha512-CGulbEDcg/ND1Im7fUNRZdGXmX2MTWVVZacQi/6DiKE5HNwZ3aVTm5PV4lO8HHz0B2h8WQyvKKjbX5XgTtydsg==", + "dependencies": { + "core-js-pure": "^3.25.1", + "regenerator-runtime": "^0.13.10" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", + "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.18.10", + "@babel/types": "^7.18.10" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.1.tgz", + "integrity": "sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==", + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.1", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.20.1", + "@babel/types": "^7.20.0", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/types": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.2.tgz", + "integrity": "sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==", + "dependencies": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" + }, + "node_modules/@cnakazawa/watch": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.4.tgz", + "integrity": "sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ==", + "dependencies": { + "exec-sh": "^0.3.2", + "minimist": "^1.2.0" + }, + "bin": { + "watch": "cli.js" + }, + "engines": { + "node": ">=0.1.95" + } + }, + "node_modules/@csstools/convert-colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@csstools/convert-colors/-/convert-colors-1.4.0.tgz", + "integrity": "sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/@csstools/normalize.css": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/@csstools/normalize.css/-/normalize.css-10.1.0.tgz", + "integrity": "sha512-ij4wRiunFfaJxjB0BdrYHIH8FxBJpOwNPhhAcunlmPdXudL1WQV1qoP9un6JsEBAgQH+7UXyyjh0g7jTxXK6tg==" + }, + "node_modules/@eslint/eslintrc": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.2.2.tgz", + "integrity": "sha512-EfB5OHNYp1F4px/LI/FEnGylop7nOqkQ1LRzCM0KccA2U8tvV8w01KBv37LbO7nW4H+YhKyo2LcJhRwjjV17QQ==", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.1.1", + "espree": "^7.3.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^3.13.1", + "lodash": "^4.17.19", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/@eslint/eslintrc/node_modules/ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/@gar/promisify": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==" + }, + "node_modules/@hapi/address": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@hapi/address/-/address-2.1.4.tgz", + "integrity": "sha512-QD1PhQk+s31P1ixsX0H0Suoupp3VMXzIVMSwobR3F3MSUO2YCV0B7xqLcUw/Bh8yuvd3LhpyqLQWTNcRmp6IdQ==", + "deprecated": "Moved to 'npm install @sideway/address'" + }, + "node_modules/@hapi/bourne": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@hapi/bourne/-/bourne-1.3.2.tgz", + "integrity": "sha512-1dVNHT76Uu5N3eJNTYcvxee+jzX4Z9lfciqRRHCU27ihbUcYi+iSc2iml5Ke1LXe1SyJCLA0+14Jh4tXJgOppA==", + "deprecated": "This version has been deprecated and is no longer supported or maintained" + }, + "node_modules/@hapi/hoek": { + "version": "8.5.1", + "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-8.5.1.tgz", + "integrity": "sha512-yN7kbciD87WzLGc5539Tn0sApjyiGHAJgKvG9W8C7O+6c7qmoQMfVs0W4bX17eqz6C78QJqqFrtgdK5EWf6Qow==", + "deprecated": "This version has been deprecated and is no longer supported or maintained" + }, + "node_modules/@hapi/joi": { + "version": "15.1.1", + "resolved": "https://registry.npmjs.org/@hapi/joi/-/joi-15.1.1.tgz", + "integrity": "sha512-entf8ZMOK8sc+8YfeOlM8pCfg3b5+WZIKBfUaaJT8UsjAAPjartzxIYm3TIbjvA4u+u++KbcXD38k682nVHDAQ==", + "deprecated": "Switch to 'npm install joi'", + "dependencies": { + "@hapi/address": "2.x.x", + "@hapi/bourne": "1.x.x", + "@hapi/hoek": "8.x.x", + "@hapi/topo": "3.x.x" + } + }, + "node_modules/@hapi/topo": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-3.1.6.tgz", + "integrity": "sha512-tAag0jEcjwH+P2quUfipd7liWCNX2F8NvYjQp2wtInsZxnMlypdw0FtAOLxtvvkO+GSRRbmNi8m/5y42PQJYCQ==", + "deprecated": "This version has been deprecated and is no longer supported or maintained", + "dependencies": { + "@hapi/hoek": "^8.3.0" + } + }, + "node_modules/@hipo/eslint-config-base": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@hipo/eslint-config-base/-/eslint-config-base-4.2.1.tgz", + "integrity": "sha512-Mp+b27lqwuX6aSkVxr8OzxvinPRs4EOKnNPBHFhVrRv4vwZ1TaDTLaltpGAAfVUnYjyoofIE+e75rJqpu24sGA==", + "dev": true, + "peerDependencies": { + "eslint": "^8.6.0", + "eslint-plugin-import": "^2.25.4" + } + }, + "node_modules/@hipo/eslint-config-react": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@hipo/eslint-config-react/-/eslint-config-react-2.3.0.tgz", + "integrity": "sha512-MOw92/06fwqJTxWQZ8kMBFu5zqEebOF2vsIWBCsm2ZwdCEX34bl1VycRJ3v2HD3TDLmwSoYO51WaJq69tt9I6Q==", + "dev": true, + "peerDependencies": { + "eslint": "^8.6.0", + "eslint-plugin-react": "^7.28.0", + "eslint-plugin-react-hooks": "^4.3.0" + } + }, + "node_modules/@hipo/eslint-config-typescript": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@hipo/eslint-config-typescript/-/eslint-config-typescript-1.2.0.tgz", + "integrity": "sha512-L5yQxw84LE8H+x4vJAulde1AlxWSzwMPmPgJU64AHtV+MQGZASn4JOXHWAJ+/BwvyRCFUCEZpbkgwzoOfZ9v4Q==", + "dev": true, + "peerDependencies": { + "@typescript-eslint/eslint-plugin": "^5.9.1", + "@typescript-eslint/parser": "^5.9.1", + "eslint-import-resolver-typescript": "^2.4.0", + "eslint-plugin-import": "^2.23.4" + } + }, + "node_modules/@hipo/react-ui-toolkit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@hipo/react-ui-toolkit/-/react-ui-toolkit-1.0.1.tgz", + "integrity": "sha512-CIuOt3SEmRkcQSfvFdiHBkcPEbdaOgHPkv6lhYdW3XKPgmZWyUoEwoRTbjimUke6MXVfJT1muotjrK3RVzBFzg==", + "dependencies": { + "classnames": "2.3.1", + "date-fns": "2.28.0", + "date-fns-tz": "1.3.3", + "react-textarea-autosize": "8.3.2", + "uuid": "8.3.2" + }, + "peerDependencies": { + "react": "17.0.2", + "react-dom": "17.0.2" + } + }, + "node_modules/@hipo/react-ui-toolkit/node_modules/classnames": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.1.tgz", + "integrity": "sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA==" + }, + "node_modules/@hipo/react-ui-toolkit/node_modules/date-fns": { + "version": "2.28.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.28.0.tgz", + "integrity": "sha512-8d35hViGYx/QH0icHYCeLmsLmMUheMmTyV9Fcm6gvNwdw31yXXH+O85sOBJ+OLnLQMKZowvpKb6FgMIQjcpvQw==", + "engines": { + "node": ">=0.11" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/date-fns" + } + }, + "node_modules/@hipo/react-ui-toolkit/node_modules/date-fns-tz": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/date-fns-tz/-/date-fns-tz-1.3.3.tgz", + "integrity": "sha512-Gks46gwbSauBQnV3Oofluj1wTm8J0tM7sbSJ9P+cJq/ZnTCpMohTKmmO5Tn+jQ7dyn0+b8G7cY4O2DZ5P/LXcA==", + "peerDependencies": { + "date-fns": ">=2.0.0" + } + }, + "node_modules/@hipo/stylelint-config-base": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@hipo/stylelint-config-base/-/stylelint-config-base-3.2.0.tgz", + "integrity": "sha512-IDr2rb7YEky/xu9DR156ZXmH89WT1TO2OLmWHmpqaGL3QfZbNbsgzaNaSH9hHnB3NiwvpFivzxmE8HVllo78FA==", + "dev": true, + "dependencies": { + "stylelint-config-standard-scss": "^3.0.0" + }, + "peerDependencies": { + "stylelint": "^14.5.1", + "stylelint-order": "^5.0.0", + "stylelint-scss": "^4.0.1" + } + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-26.6.2.tgz", + "integrity": "sha512-IY1R2i2aLsLr7Id3S6p2BA82GNWryt4oSvEXLAKc+L2zdi89dSkE8xC1C+0kpATG4JhBJREnQOH7/zmccM2B0g==", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^26.6.2", + "jest-util": "^26.6.2", + "slash": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/console/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/console/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@jest/console/node_modules/jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/console/node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/console/node_modules/pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@jest/console/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + }, + "node_modules/@jest/core": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-26.6.3.tgz", + "integrity": "sha512-xvV1kKbhfUqFVuZ8Cyo+JPpipAHHAV3kcDBftiduK8EICXmTFddryy3P7NfZt8Pv37rA9nEJBKCCkglCPt/Xjw==", + "dependencies": { + "@jest/console": "^26.6.2", + "@jest/reporters": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.4", + "jest-changed-files": "^26.6.2", + "jest-config": "^26.6.3", + "jest-haste-map": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-resolve": "^26.6.2", + "jest-resolve-dependencies": "^26.6.3", + "jest-runner": "^26.6.3", + "jest-runtime": "^26.6.3", + "jest-snapshot": "^26.6.2", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "jest-watcher": "^26.6.2", + "micromatch": "^4.0.2", + "p-each-series": "^2.1.0", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/core/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/core/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@jest/core/node_modules/jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/core/node_modules/jest-resolve": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.6.2.tgz", + "integrity": "sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ==", + "dependencies": { + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^26.6.2", + "read-pkg-up": "^7.0.1", + "resolve": "^1.18.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/core/node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/core/node_modules/pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@jest/core/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + }, + "node_modules/@jest/environment": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-26.6.2.tgz", + "integrity": "sha512-nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA==", + "dependencies": { + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/environment/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/environment/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@jest/expect-utils": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.3.1.tgz", + "integrity": "sha512-wlrznINZI5sMjwvUoLVk617ll/UYfGIZNxmbU+Pa7wmkL4vYzhV9R2pwVqUh4NWWuLQWkI8+8mOkxs//prKQ3g==", + "dev": true, + "dependencies": { + "jest-get-type": "^29.2.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-26.6.2.tgz", + "integrity": "sha512-14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA==", + "dependencies": { + "@jest/types": "^26.6.2", + "@sinonjs/fake-timers": "^6.0.1", + "@types/node": "*", + "jest-message-util": "^26.6.2", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/fake-timers/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/fake-timers/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@jest/fake-timers/node_modules/jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/fake-timers/node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/fake-timers/node_modules/pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@jest/fake-timers/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + }, + "node_modules/@jest/globals": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-26.6.2.tgz", + "integrity": "sha512-85Ltnm7HlB/KesBUuALwQ68YTU72w9H2xW9FjZ1eL1U3lhtefjjl5c2MiUbpXt/i6LaPRvoOFJ22yCBSfQ0JIA==", + "dependencies": { + "@jest/environment": "^26.6.2", + "@jest/types": "^26.6.2", + "expect": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@jest/globals/node_modules/diff-sequences": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz", + "integrity": "sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==", + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals/node_modules/expect": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/expect/-/expect-26.6.2.tgz", + "integrity": "sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA==", + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-styles": "^4.0.0", + "jest-get-type": "^26.3.0", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-regex-util": "^26.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals/node_modules/jest-diff": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz", + "integrity": "sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==", + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals/node_modules/jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==", + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals/node_modules/jest-matcher-utils": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz", + "integrity": "sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw==", + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals/node_modules/jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals/node_modules/pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@jest/globals/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + }, + "node_modules/@jest/reporters": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-26.6.2.tgz", + "integrity": "sha512-h2bW53APG4HvkOnVMo8q3QXa6pcaNt1HkwVsOPMBV6LD/q9oSpxNSYZQYkAnjdMjrJ86UuYeLo+aEZClV6opnw==", + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.2.4", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^4.0.3", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.0.2", + "jest-haste-map": "^26.6.2", + "jest-resolve": "^26.6.2", + "jest-util": "^26.6.2", + "jest-worker": "^26.6.2", + "slash": "^3.0.0", + "source-map": "^0.6.0", + "string-length": "^4.0.1", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^7.0.0" + }, + "engines": { + "node": ">= 10.14.2" + }, + "optionalDependencies": { + "node-notifier": "^8.0.0" + } + }, + "node_modules/@jest/reporters/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/reporters/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@jest/reporters/node_modules/istanbul-lib-instrument": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", + "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", + "dependencies": { + "@babel/core": "^7.7.5", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.0.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/reporters/node_modules/jest-resolve": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.6.2.tgz", + "integrity": "sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ==", + "dependencies": { + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^26.6.2", + "read-pkg-up": "^7.0.1", + "resolve": "^1.18.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/reporters/node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/reporters/node_modules/jest-worker": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", + "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/@jest/reporters/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@jest/schemas": { + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.0.0.tgz", + "integrity": "sha512-3Ab5HgYIIAnS0HjqJHQYZS+zXc4tUmTmBH3z83ajI6afXp8X3ZtdLX+nXx+I7LNkJD7uN9LAVhgnjDgZa2z0kA==", + "dev": true, + "dependencies": { + "@sinclair/typebox": "^0.24.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/source-map": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-26.6.2.tgz", + "integrity": "sha512-YwYcCwAnNmOVsZ8mr3GfnzdXDAl4LaenZP5z+G0c8bzC9/dugL8zRmxZzdoTl4IaS3CryS1uWnROLPFmb6lVvA==", + "dependencies": { + "callsites": "^3.0.0", + "graceful-fs": "^4.2.4", + "source-map": "^0.6.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/test-result": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-26.6.2.tgz", + "integrity": "sha512-5O7H5c/7YlojphYNrK02LlDIV2GNPYisKwHm2QTKjNZeEzezCbwYs9swJySv2UfPMyZ0VdsmMv7jIlD/IKYQpQ==", + "dependencies": { + "@jest/console": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/test-result/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/test-result/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-26.6.3.tgz", + "integrity": "sha512-YHlVIjP5nfEyjlrSr8t/YdNfU/1XEt7c5b4OxcXCjyRhjzLYu/rO69/WHPuYcbCWkz8kAeZVZp2N2+IOLLEPGw==", + "dependencies": { + "@jest/test-result": "^26.6.2", + "graceful-fs": "^4.2.4", + "jest-haste-map": "^26.6.2", + "jest-runner": "^26.6.3", + "jest-runtime": "^26.6.3" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/transform": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-26.6.2.tgz", + "integrity": "sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA==", + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/types": "^26.6.2", + "babel-plugin-istanbul": "^6.0.0", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.4", + "jest-haste-map": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-util": "^26.6.2", + "micromatch": "^4.0.2", + "pirates": "^4.0.1", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/transform/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/transform/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@jest/transform/node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/types": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.3.1.tgz", + "integrity": "sha512-d0S0jmmTpjnhCmNpApgX3jrUZgZ22ivKJRvL2lli5hpCRoNnp1f85r2/wpKfXuYu8E7Jjh1hGfhPyup1NM5AmA==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.0.0", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "dependencies": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@npmcli/fs": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.1.tgz", + "integrity": "sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==", + "dependencies": { + "@gar/promisify": "^1.0.1", + "semver": "^7.3.5" + } + }, + "node_modules/@npmcli/move-file": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz", + "integrity": "sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==", + "deprecated": "This functionality has been moved to @npmcli/fs", + "dependencies": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@npmcli/move-file/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@remix-run/router": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.0.3.tgz", + "integrity": "sha512-ceuyTSs7PZ/tQqi19YZNBc5X7kj1f8p+4DIyrcIYFY9h+hd1OKm4RqtiWldR9eGEvIiJfsqwM4BsuCtRIuEw6Q==", + "engines": { + "node": ">=14" + } + }, + "node_modules/@rollup/plugin-node-resolve": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-7.1.3.tgz", + "integrity": "sha512-RxtSL3XmdTAE2byxekYLnx+98kEUOrPHF/KRVjLH+DEIHy6kjIw7YINQzn+NXiH/NTrQLAwYs0GWB+csWygA9Q==", + "dependencies": { + "@rollup/pluginutils": "^3.0.8", + "@types/resolve": "0.0.8", + "builtin-modules": "^3.1.0", + "is-module": "^1.0.0", + "resolve": "^1.14.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/@rollup/plugin-replace": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-2.4.2.tgz", + "integrity": "sha512-IGcu+cydlUMZ5En85jxHH4qj2hta/11BHq95iHEyb2sbgiN0eCdzvUcHw5gt9pBL5lTi4JDYJ1acCoMGpTvEZg==", + "dependencies": { + "@rollup/pluginutils": "^3.1.0", + "magic-string": "^0.25.7" + }, + "peerDependencies": { + "rollup": "^1.20.0 || ^2.0.0" + } + }, + "node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/@rollup/pluginutils/node_modules/@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==" + }, + "node_modules/@sinclair/typebox": { + "version": "0.24.51", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.51.tgz", + "integrity": "sha512-1P1OROm/rdubP5aFDSZQILU0vrLCJ4fvHt6EoqHEM+2D/G5MK3bIaymUKLit8Js9gbns5UyJnkP/TZROLw4tUA==", + "dev": true + }, + "node_modules/@sinonjs/commons": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.5.tgz", + "integrity": "sha512-rTpCA0wG1wUxglBSFdMMY0oTrKYvgf4fNgv/sXbfCVAdf+FnPBdKJR/7XbpTCwbCrvCbdPYnlWaUUYz4V2fPDA==", + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz", + "integrity": "sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA==", + "dependencies": { + "@sinonjs/commons": "^1.7.0" + } + }, + "node_modules/@surma/rollup-plugin-off-main-thread": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@surma/rollup-plugin-off-main-thread/-/rollup-plugin-off-main-thread-1.4.2.tgz", + "integrity": "sha512-yBMPqmd1yEJo/280PAMkychuaALyQ9Lkb5q1ck3mjJrFuEobIfhnQ4J3mbvBoISmR3SWMWV+cGB/I0lCQee79A==", + "dependencies": { + "ejs": "^2.6.1", + "magic-string": "^0.25.0" + } + }, + "node_modules/@svgr/babel-plugin-add-jsx-attribute": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-5.4.0.tgz", + "integrity": "sha512-ZFf2gs/8/6B8PnSofI0inYXr2SDNTDScPXhN7k5EqD4aZ3gi6u+rbmZHVB8IM3wDyx8ntKACZbtXSm7oZGRqVg==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/babel-plugin-remove-jsx-attribute": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-5.4.0.tgz", + "integrity": "sha512-yaS4o2PgUtwLFGTKbsiAy6D0o3ugcUhWK0Z45umJ66EPWunAz9fuFw2gJuje6wqQvQWOTJvIahUwndOXb7QCPg==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/babel-plugin-remove-jsx-empty-expression": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-5.0.1.tgz", + "integrity": "sha512-LA72+88A11ND/yFIMzyuLRSMJ+tRKeYKeQ+mR3DcAZ5I4h5CPWN9AHyUzJbWSYp/u2u0xhmgOe0+E41+GjEueA==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/babel-plugin-replace-jsx-attribute-value": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-5.0.1.tgz", + "integrity": "sha512-PoiE6ZD2Eiy5mK+fjHqwGOS+IXX0wq/YDtNyIgOrc6ejFnxN4b13pRpiIPbtPwHEc+NT2KCjteAcq33/F1Y9KQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/babel-plugin-svg-dynamic-title": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-5.4.0.tgz", + "integrity": "sha512-zSOZH8PdZOpuG1ZVx/cLVePB2ibo3WPpqo7gFIjLV9a0QsuQAzJiwwqmuEdTaW2pegyBE17Uu15mOgOcgabQZg==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/babel-plugin-svg-em-dimensions": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-5.4.0.tgz", + "integrity": "sha512-cPzDbDA5oT/sPXDCUYoVXEmm3VIoAWAPT6mSPTJNbQaBNUuEKVKyGH93oDY4e42PYHRW67N5alJx/eEol20abw==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/babel-plugin-transform-react-native-svg": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-5.4.0.tgz", + "integrity": "sha512-3eYP/SaopZ41GHwXma7Rmxcv9uRslRDTY1estspeB1w1ueZWd/tPlMfEOoccYpEMZU3jD4OU7YitnXcF5hLW2Q==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/babel-plugin-transform-svg-component": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-5.5.0.tgz", + "integrity": "sha512-q4jSH1UUvbrsOtlo/tKcgSeiCHRSBdXoIoqX1pgcKK/aU3JD27wmMKwGtpB8qRYUYoyXvfGxUVKchLuR5pB3rQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/babel-preset": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-5.5.0.tgz", + "integrity": "sha512-4FiXBjvQ+z2j7yASeGPEi8VD/5rrGQk4Xrq3EdJmoZgz/tpqChpo5hgXDvmEauwtvOc52q8ghhZK4Oy7qph4ig==", + "dependencies": { + "@svgr/babel-plugin-add-jsx-attribute": "^5.4.0", + "@svgr/babel-plugin-remove-jsx-attribute": "^5.4.0", + "@svgr/babel-plugin-remove-jsx-empty-expression": "^5.0.1", + "@svgr/babel-plugin-replace-jsx-attribute-value": "^5.0.1", + "@svgr/babel-plugin-svg-dynamic-title": "^5.4.0", + "@svgr/babel-plugin-svg-em-dimensions": "^5.4.0", + "@svgr/babel-plugin-transform-react-native-svg": "^5.4.0", + "@svgr/babel-plugin-transform-svg-component": "^5.5.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/core": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@svgr/core/-/core-5.5.0.tgz", + "integrity": "sha512-q52VOcsJPvV3jO1wkPtzTuKlvX7Y3xIcWRpCMtBF3MrteZJtBfQw/+u0B1BHy5ColpQc1/YVTrPEtSYIMNZlrQ==", + "dependencies": { + "@svgr/plugin-jsx": "^5.5.0", + "camelcase": "^6.2.0", + "cosmiconfig": "^7.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/hast-util-to-babel-ast": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-5.5.0.tgz", + "integrity": "sha512-cAaR/CAiZRB8GP32N+1jocovUtvlj0+e65TB50/6Lcime+EA49m/8l+P2ko+XPJ4dw3xaPS3jOL4F2X4KWxoeQ==", + "dependencies": { + "@babel/types": "^7.12.6" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/plugin-jsx": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-5.5.0.tgz", + "integrity": "sha512-V/wVh33j12hGh05IDg8GpIUXbjAPnTdPTKuP4VNLggnwaHMPNQNae2pRnyTAILWCQdz5GyMqtO488g7CKM8CBA==", + "dependencies": { + "@babel/core": "^7.12.3", + "@svgr/babel-preset": "^5.5.0", + "@svgr/hast-util-to-babel-ast": "^5.5.0", + "svg-parser": "^2.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/plugin-svgo": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-5.5.0.tgz", + "integrity": "sha512-r5swKk46GuQl4RrVejVwpeeJaydoxkdwkM1mBKOgJLBUJPGaLci6ylg/IjhrRsREKDkr4kbMWdgOtbXEh0fyLQ==", + "dependencies": { + "cosmiconfig": "^7.0.0", + "deepmerge": "^4.2.2", + "svgo": "^1.2.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/webpack": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-5.5.0.tgz", + "integrity": "sha512-DOBOK255wfQxguUta2INKkzPj6AIS6iafZYiYmHn6W3pHlycSRRlvWKCfLDG10fXfLWqE3DJHgRUOyJYmARa7g==", + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/plugin-transform-react-constant-elements": "^7.12.1", + "@babel/preset-env": "^7.12.1", + "@babel/preset-react": "^7.12.5", + "@svgr/core": "^5.5.0", + "@svgr/plugin-jsx": "^5.5.0", + "@svgr/plugin-svgo": "^5.5.0", + "loader-utils": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/@types/babel__core": { + "version": "7.1.20", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.20.tgz", + "integrity": "sha512-PVb6Bg2QuscZ30FvOU7z4guG6c926D9YRvOxEaelzndpMsvP+YM74Q/dAFASpg2l6+XLalxSGxcq/lrgYWZtyQ==", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", + "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", + "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.2.tgz", + "integrity": "sha512-FcFaxOr2V5KZCviw1TnutEMVUVsGt4D2hP1TAfXZAMKuHYW3xQhe3jTxNPWutgCJ3/X1c5yX8ZoGVEItxKbwBg==", + "dependencies": { + "@babel/types": "^7.3.0" + } + }, + "node_modules/@types/eslint": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.29.0.tgz", + "integrity": "sha512-VNcvioYDH8/FxaeTKkM4/TiTwt6pBV9E3OfGmvaw8tPl0rrHCJ4Ll15HRT+pMiFAf/MLQvAzC+6RzUMEL9Ceng==", + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.0.tgz", + "integrity": "sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==" + }, + "node_modules/@types/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", + "dependencies": { + "@types/minimatch": "*", + "@types/node": "*" + } + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz", + "integrity": "sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/history": { + "version": "4.7.11", + "resolved": "https://registry.npmjs.org/@types/history/-/history-4.7.11.tgz", + "integrity": "sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==", + "dev": true + }, + "node_modules/@types/html-minifier-terser": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-5.1.2.tgz", + "integrity": "sha512-h4lTMgMJctJybDp8CQrxTUiiYmedihHWkjnF/8Pxseu2S6Nlfcy8kwboQ8yejh456rP2yWoEVm1sS/FVsfM48w==" + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==" + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", + "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/jest": { + "version": "29.2.3", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.2.3.tgz", + "integrity": "sha512-6XwoEbmatfyoCjWRX7z0fKMmgYKe9+/HrviJ5k0X/tjJWHGAezZOfYaxqQKuzG/TvQyr+ktjm4jgbk0s4/oF2w==", + "dev": true, + "dependencies": { + "expect": "^29.0.0", + "pretty-format": "^29.0.0" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==" + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==" + }, + "node_modules/@types/minimatch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", + "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==" + }, + "node_modules/@types/minimist": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz", + "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==", + "dev": true + }, + "node_modules/@types/node": { + "version": "16.11.36", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.36.tgz", + "integrity": "sha512-FR5QJe+TaoZ2GsMHkjuwoNabr+UrJNRr2HNOo+r/7vhcuntM6Ee/pRPOnRhhL2XE9OOvX9VLEq+BcXl3VjNoWA==" + }, + "node_modules/@types/normalize-package-data": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", + "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==" + }, + "node_modules/@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==" + }, + "node_modules/@types/prettier": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.1.tgz", + "integrity": "sha512-ri0UmynRRvZiiUJdiz38MmIblKK+oH30MztdBVR95dv/Ubw6neWSb8u1XpRb72L4qsZOhz+L+z9JD40SJmfWow==" + }, + "node_modules/@types/prop-types": { + "version": "15.7.5", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", + "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==", + "dev": true + }, + "node_modules/@types/q": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.5.tgz", + "integrity": "sha512-L28j2FcJfSZOnL1WBjDYp2vUHCeIFlyYI/53EwD/rKUBQ7MtUUfbQWiyKJGpcnv4/WgrhWsFKrcPstcAt/J0tQ==" + }, + "node_modules/@types/react": { + "version": "17.0.45", + "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.45.tgz", + "integrity": "sha512-YfhQ22Lah2e3CHPsb93tRwIGNiSwkuz1/blk4e6QrWS0jQzCSNbGLtOEYhPg02W0yGTTmpajp7dCTbBAMN3qsg==", + "dev": true, + "dependencies": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "17.0.17", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.17.tgz", + "integrity": "sha512-VjnqEmqGnasQKV0CWLevqMTXBYG9GbwuE6x3VetERLh0cq2LTptFE73MrQi2S7GkKXCf2GgwItB/melLnxfnsg==", + "dev": true, + "dependencies": { + "@types/react": "^17" + } + }, + "node_modules/@types/react-modal": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/@types/react-modal/-/react-modal-3.13.1.tgz", + "integrity": "sha512-iY/gPvTDIy6Z+37l+ibmrY+GTV4KQTHcCyR5FIytm182RQS69G5ps4PH2FxtC7bAQ2QRHXMevsBgck7IQruHNg==", + "dev": true, + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@types/react-router": { + "version": "5.1.19", + "resolved": "https://registry.npmjs.org/@types/react-router/-/react-router-5.1.19.tgz", + "integrity": "sha512-Fv/5kb2STAEMT3wHzdKQK2z8xKq38EDIGVrutYLmQVVLe+4orDFquU52hQrULnEHinMKv9FSA6lf9+uNT1ITtA==", + "dev": true, + "dependencies": { + "@types/history": "^4.7.11", + "@types/react": "*" + } + }, + "node_modules/@types/react-router-dom": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/@types/react-router-dom/-/react-router-dom-5.3.3.tgz", + "integrity": "sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==", + "dev": true, + "dependencies": { + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router": "*" + } + }, + "node_modules/@types/resolve": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-0.0.8.tgz", + "integrity": "sha512-auApPaJf3NPfe18hSoJkp8EbZzer2ISk7o8mCC3M9he/a04+gbMF97NkpD2S8riMGvm4BMRI59/SZQSaLTKpsQ==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/scheduler": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", + "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==", + "dev": true + }, + "node_modules/@types/scrypt-async": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@types/scrypt-async/-/scrypt-async-1.3.2.tgz", + "integrity": "sha512-vmS6xSNOKCNAbtrRATbcbSbI0rGfG9ciKclMJ5H1o67LcmAqxiwA1tNYE+yLpTdD8K0LSFwu2kU9UajO3pDegQ==", + "dev": true + }, + "node_modules/@types/semver": { + "version": "7.3.13", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", + "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", + "devOptional": true, + "peer": true + }, + "node_modules/@types/source-list-map": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", + "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==" + }, + "node_modules/@types/stack-utils": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", + "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==" + }, + "node_modules/@types/tapable": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.8.tgz", + "integrity": "sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ==" + }, + "node_modules/@types/uglify-js": { + "version": "3.17.1", + "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.17.1.tgz", + "integrity": "sha512-GkewRA4i5oXacU/n4MA9+bLgt5/L3F1mKrYvFGm7r2ouLXhRKjuWwo9XHNnbx6WF3vlGW21S3fCvgqxvxXXc5g==", + "dependencies": { + "source-map": "^0.6.1" + } + }, + "node_modules/@types/webfontloader": { + "version": "1.6.35", + "resolved": "https://registry.npmjs.org/@types/webfontloader/-/webfontloader-1.6.35.tgz", + "integrity": "sha512-IJlrsiDWq6KghQ7tPlL5tcwSUyOxLDceT+AFUY7Ylj0Fcv3/h3QkANqQxZ0B5mEpEKxhTw76vDmvrruSMV9n9Q==", + "dev": true + }, + "node_modules/@types/webpack": { + "version": "4.41.33", + "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.33.tgz", + "integrity": "sha512-PPajH64Ft2vWevkerISMtnZ8rTs4YmRbs+23c402J0INmxDKCrhZNvwZYtzx96gY2wAtXdrK1BS2fiC8MlLr3g==", + "dependencies": { + "@types/node": "*", + "@types/tapable": "^1", + "@types/uglify-js": "*", + "@types/webpack-sources": "*", + "anymatch": "^3.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/@types/webpack-sources": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-3.2.0.tgz", + "integrity": "sha512-Ft7YH3lEVRQ6ls8k4Ff1oB4jN6oy/XmU6tQISKdhfh+1mR+viZFphS6WL0IrtDOzvefmJg5a0s7ZQoRXwqTEFg==", + "dependencies": { + "@types/node": "*", + "@types/source-list-map": "*", + "source-map": "^0.7.3" + } + }, + "node_modules/@types/webpack-sources/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@types/yargs": { + "version": "17.0.13", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.13.tgz", + "integrity": "sha512-9sWaruZk2JGxIQU+IhI1fhPYRcQ0UuTNuKuCW9bR5fp7qi2Llf7WDzNa17Cy7TKnh3cdxDOiyTu6gaLS0eDatg==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", + "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==" + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "5.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.43.0.tgz", + "integrity": "sha512-wNPzG+eDR6+hhW4yobEmpR36jrqqQv1vxBq5LJO3fBAktjkvekfr4BRl+3Fn1CM/A+s8/EiGUbOMDoYqWdbtXA==", + "devOptional": true, + "peer": true, + "dependencies": { + "@typescript-eslint/scope-manager": "5.43.0", + "@typescript-eslint/type-utils": "5.43.0", + "@typescript-eslint/utils": "5.43.0", + "debug": "^4.3.4", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "regexpp": "^3.2.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/experimental-utils": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.33.0.tgz", + "integrity": "sha512-zeQjOoES5JFjTnAhI5QY7ZviczMzDptls15GFsI6jyUOq0kOf9+WonkhtlIhh0RgHRnqj5gdNxW5j1EvAyYg6Q==", + "dependencies": { + "@types/json-schema": "^7.0.7", + "@typescript-eslint/scope-manager": "4.33.0", + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/typescript-estree": "4.33.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + } + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/@typescript-eslint/scope-manager": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.33.0.tgz", + "integrity": "sha512-5IfJHpgTsTZuONKbODctL4kKuQje/bzBRkwHE8UOZ4f89Zeddg+EGZs8PD8NcN4LdM3ygHWYB3ukPAYjvl/qbQ==", + "dependencies": { + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/visitor-keys": "4.33.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/@typescript-eslint/types": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.33.0.tgz", + "integrity": "sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ==", + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/@typescript-eslint/typescript-estree": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.33.0.tgz", + "integrity": "sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA==", + "dependencies": { + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/visitor-keys": "4.33.0", + "debug": "^4.3.1", + "globby": "^11.0.3", + "is-glob": "^4.0.1", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/@typescript-eslint/visitor-keys": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.33.0.tgz", + "integrity": "sha512-uqi/2aSz9g2ftcHWf8uLPJA70rUv6yuMW5Bohw+bwcuzaxQIHaKFZCKGoGXIrc9vkTJ3+0txM73K0Hq3d5wgIg==", + "dependencies": { + "@typescript-eslint/types": "4.33.0", + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "5.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.43.0.tgz", + "integrity": "sha512-2iHUK2Lh7PwNUlhFxxLI2haSDNyXvebBO9izhjhMoDC+S3XI9qt2DGFUsiJ89m2k7gGYch2aEpYqV5F/+nwZug==", + "devOptional": true, + "dependencies": { + "@typescript-eslint/scope-manager": "5.43.0", + "@typescript-eslint/types": "5.43.0", + "@typescript-eslint/typescript-estree": "5.43.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "5.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.43.0.tgz", + "integrity": "sha512-XNWnGaqAtTJsUiZaoiGIrdJYHsUOd3BZ3Qj5zKp9w6km6HsrjPk/TGZv0qMTWyWj0+1QOqpHQ2gZOLXaGA9Ekw==", + "devOptional": true, + "dependencies": { + "@typescript-eslint/types": "5.43.0", + "@typescript-eslint/visitor-keys": "5.43.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "5.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.43.0.tgz", + "integrity": "sha512-K21f+KY2/VvYggLf5Pk4tgBOPs2otTaIHy2zjclo7UZGLyFH86VfUOm5iq+OtDtxq/Zwu2I3ujDBykVW4Xtmtg==", + "devOptional": true, + "peer": true, + "dependencies": { + "@typescript-eslint/typescript-estree": "5.43.0", + "@typescript-eslint/utils": "5.43.0", + "debug": "^4.3.4", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/types": { + "version": "5.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.43.0.tgz", + "integrity": "sha512-jpsbcD0x6AUvV7tyOlyvon0aUsQpF8W+7TpJntfCUWU1qaIKu2K34pMwQKSzQH8ORgUrGYY6pVIh1Pi8TNeteg==", + "devOptional": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "5.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.43.0.tgz", + "integrity": "sha512-BZ1WVe+QQ+igWal2tDbNg1j2HWUkAa+CVqdU79L4HP9izQY6CNhXfkNwd1SS4+sSZAP/EthI1uiCSY/+H0pROg==", + "devOptional": true, + "dependencies": { + "@typescript-eslint/types": "5.43.0", + "@typescript-eslint/visitor-keys": "5.43.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "5.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.43.0.tgz", + "integrity": "sha512-8nVpA6yX0sCjf7v/NDfeaOlyaIIqL7OaIGOWSPFqUKK59Gnumd3Wa+2l8oAaYO2lk0sO+SbWFWRSvhu8gLGv4A==", + "devOptional": true, + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.43.0", + "@typescript-eslint/types": "5.43.0", + "@typescript-eslint/typescript-estree": "5.43.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0", + "semver": "^7.3.7" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "5.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.43.0.tgz", + "integrity": "sha512-icl1jNH/d18OVHLfcwdL3bWUKsBeIiKYTGxMJCoGe7xFht+E4QgzOqoWYrU8XSLJWhVw8nTacbm03v23J/hFTg==", + "devOptional": true, + "dependencies": { + "@typescript-eslint/types": "5.43.0", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", + "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", + "dependencies": { + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==" + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==" + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz", + "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==" + }, + "node_modules/@webassemblyjs/helper-code-frame": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", + "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", + "dependencies": { + "@webassemblyjs/wast-printer": "1.9.0" + } + }, + "node_modules/@webassemblyjs/helper-fsm": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==" + }, + "node_modules/@webassemblyjs/helper-module-context": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", + "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", + "dependencies": { + "@webassemblyjs/ast": "1.9.0" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==" + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz", + "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==", + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz", + "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==", + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz", + "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==", + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz", + "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==" + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz", + "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==", + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/helper-wasm-section": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-opt": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0", + "@webassemblyjs/wast-printer": "1.9.0" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz", + "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==", + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz", + "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==", + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz", + "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==", + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" + } + }, + "node_modules/@webassemblyjs/wast-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", + "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/floating-point-hex-parser": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-code-frame": "1.9.0", + "@webassemblyjs/helper-fsm": "1.9.0", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", + "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==" + }, + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==" + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-globals": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", + "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "dependencies": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/address": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/address/-/address-1.1.2.tgz", + "integrity": "sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA==", + "engines": { + "node": ">= 0.12.0" + } + }, + "node_modules/adjust-sourcemap-loader": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-3.0.0.tgz", + "integrity": "sha512-YBrGyT2/uVQ/c6Rr+t6ZJXniY03YtHGMJQYal368burRGYKqhx9qGTWqcBU5s1CwYY9E/ri63RYyG1IacMZtqw==", + "dependencies": { + "loader-utils": "^2.0.0", + "regex-parser": "^2.2.11" + }, + "engines": { + "node": ">=8.9" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-errors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", + "peerDependencies": { + "ajv": ">=5.0.0" + } + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/algo-msgpack-with-bigint": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/algo-msgpack-with-bigint/-/algo-msgpack-with-bigint-2.1.1.tgz", + "integrity": "sha512-F1tGh056XczEaEAqu7s+hlZUDWwOBT70Eq0lfMpBP2YguSQVyxRbprLq5rELXKQOyOaixTWYhMeMQMzP0U5FoQ==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/algosdk": { + "version": "1.23.2", + "resolved": "https://registry.npmjs.org/algosdk/-/algosdk-1.23.2.tgz", + "integrity": "sha512-ZDq71Kq+e3bvHxnTi/hWqom2/YHeTrbkxenOOCvPidRQuwkaOQAs92c4fqImdn7+Y+MfLhdtQspBLFR1hQTE4A==", + "dependencies": { + "algo-msgpack-with-bigint": "^2.1.1", + "buffer": "^6.0.2", + "cross-fetch": "^3.1.5", + "hi-base32": "^0.5.1", + "js-sha256": "^0.9.0", + "js-sha3": "^0.8.0", + "js-sha512": "^0.8.0", + "json-bigint": "^1.0.0", + "tweetnacl": "^1.0.3", + "vlq": "^2.0.4" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/alphanum-sort": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz", + "integrity": "sha512-0FcBfdcmaumGPQ0qPn7Q5qTgz/ooXgIyp1rf8ik5bGX8mpE2YHjC0P/eyQvxu1GURYQgq9ozf2mteQ5ZD9YiyQ==" + }, + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-html": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz", + "integrity": "sha512-JoAxEa1DfP9m2xfB/y2r/aKcwXNlltr4+0QSBC4TrLfcxyvepX2Pv0t/xpgGV5bGsDzCYV8SzjWgyCW0T9yYbA==", + "engines": [ + "node >= 0.8.0" + ], + "bin": { + "ansi-html": "bin/ansi-html" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/aria-query": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz", + "integrity": "sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==", + "dependencies": { + "@babel/runtime": "^7.10.2", + "@babel/runtime-corejs3": "^7.10.2" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/arity-n": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arity-n/-/arity-n-1.0.4.tgz", + "integrity": "sha512-fExL2kFDC1Q2DUOx3whE/9KoN66IzkY4b4zUHUBFM1ojEYjZZYDcUW3bek/ufGionX9giIKDC5redH2IlGqcQQ==" + }, + "node_modules/arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-differ": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz", + "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/array-flatten": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", + "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==" + }, + "node_modules/array-includes": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz", + "integrity": "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "get-intrinsic": "^1.1.3", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz", + "integrity": "sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flatmap": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz", + "integrity": "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.reduce": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.5.tgz", + "integrity": "sha512-kDdugMl7id9COE8R7MHF5jWk7Dqt/fs4Pv+JXoICnYwqpjjjbUurz6w5fT5IG6brLdJhv6/VoHB0H7oyIBXd+Q==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-array-method-boxes-properly": "^1.0.0", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/arrify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", + "engines": { + "node": ">=8" + } + }, + "node_modules/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" + }, + "node_modules/asn1.js": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "dependencies": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/asn1.js/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/assert": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", + "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", + "dependencies": { + "object-assign": "^4.1.1", + "util": "0.10.3" + } + }, + "node_modules/assert/node_modules/inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha512-8nWq2nLTAwd02jTqJExUYFSD/fKq6VH9Y/oG2accc/kdI0V98Bag8d5a4gi3XHz73rDWa2PvTtvcWYquKqSENA==" + }, + "node_modules/assert/node_modules/util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha512-5KiHfsmkqacuKjkRkdV7SsfDJ2EGiPsK92s2MhNSY0craxjTdKTtqKsJaCWp4LW33ZZ0OPUv1WO/TFvNQRiQxQ==", + "dependencies": { + "inherits": "2.0.1" + } + }, + "node_modules/assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ast-types-flow": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", + "integrity": "sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==" + }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/async": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/async-each": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==" + }, + "node_modules/async-limiter": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", + "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==" + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/autoprefixer": { + "version": "9.8.8", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.8.tgz", + "integrity": "sha512-eM9d/swFopRt5gdJ7jrpCwgvEMIayITpojhkkSMRsFHYuH5bkSQ4p/9qTEHtmNudUZh22Tehu7I6CxAW0IXTKA==", + "dependencies": { + "browserslist": "^4.12.0", + "caniuse-lite": "^1.0.30001109", + "normalize-range": "^0.1.2", + "num2fraction": "^1.2.2", + "picocolors": "^0.2.1", + "postcss": "^7.0.32", + "postcss-value-parser": "^4.1.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "funding": { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + } + }, + "node_modules/axe-core": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.5.2.tgz", + "integrity": "sha512-u2MVsXfew5HBvjsczCv+xlwdNnB1oQR9HlAcsejZttNjKKSkeDNVwB1vMThIUIFI9GoT57Vtk8iQLwqOfAkboA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/axobject-query": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz", + "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==" + }, + "node_modules/babel-eslint": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", + "integrity": "sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==", + "deprecated": "babel-eslint is now @babel/eslint-parser. This package will no longer receive updates.", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.7.0", + "@babel/traverse": "^7.7.0", + "@babel/types": "^7.7.0", + "eslint-visitor-keys": "^1.0.0", + "resolve": "^1.12.0" + }, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "eslint": ">= 4.12.1" + } + }, + "node_modules/babel-eslint/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/babel-extract-comments": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/babel-extract-comments/-/babel-extract-comments-1.0.0.tgz", + "integrity": "sha512-qWWzi4TlddohA91bFwgt6zO/J0X+io7Qp184Fw0m2JYRSTZnJbFR8+07KmzudHCZgOiKRCrjhylwv9Xd8gfhVQ==", + "dependencies": { + "babylon": "^6.18.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/babel-jest": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-26.6.3.tgz", + "integrity": "sha512-pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA==", + "dependencies": { + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/babel__core": "^7.1.7", + "babel-plugin-istanbul": "^6.0.0", + "babel-preset-jest": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "slash": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-jest/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/babel-jest/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/babel-loader": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.1.0.tgz", + "integrity": "sha512-7q7nC1tYOrqvUrN3LQK4GwSk/TQorZSOlO9C+RZDZpODgyN4ZlCqE5q9cDsyWOliN+aU9B4JX01xK9eJXowJLw==", + "dependencies": { + "find-cache-dir": "^2.1.0", + "loader-utils": "^1.4.0", + "mkdirp": "^0.5.3", + "pify": "^4.0.1", + "schema-utils": "^2.6.5" + }, + "engines": { + "node": ">= 6.9" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "webpack": ">=2" + } + }, + "node_modules/babel-loader/node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/babel-loader/node_modules/loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz", + "integrity": "sha512-PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw==", + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/babel-plugin-macros": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", + "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", + "dependencies": { + "@babel/runtime": "^7.12.5", + "cosmiconfig": "^7.0.0", + "resolve": "^1.19.0" + }, + "engines": { + "node": ">=10", + "npm": ">=6" + } + }, + "node_modules/babel-plugin-named-asset-import": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.3.8.tgz", + "integrity": "sha512-WXiAc++qo7XcJ1ZnTYGtLxmBCVbddAml3CEXgWaBzNzLNoxtQ8AiGEFDMOhot9XjTCQbvP5E77Fj9Gk924f00Q==", + "peerDependencies": { + "@babel/core": "^7.1.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", + "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", + "dependencies": { + "@babel/compat-data": "^7.17.7", + "@babel/helper-define-polyfill-provider": "^0.3.3", + "semver": "^6.1.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz", + "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.3", + "core-js-compat": "^3.25.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", + "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-syntax-object-rest-spread": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", + "integrity": "sha512-C4Aq+GaAj83pRQ0EFgTvw5YO6T3Qz2KGrNRwIj9mSoNHVvdZY4KO2uA6HNtNXCw993iSZnckY1aLW8nOi8i4+w==" + }, + "node_modules/babel-plugin-transform-object-rest-spread": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz", + "integrity": "sha512-ocgA9VJvyxwt+qJB0ncxV8kb/CjfTcECUY4tQ5VT7nP6Aohzobm8CDFaQ5FHdvZQzLmf0sgDxB8iRXZXxwZcyA==", + "dependencies": { + "babel-plugin-syntax-object-rest-spread": "^6.8.0", + "babel-runtime": "^6.26.0" + } + }, + "node_modules/babel-plugin-transform-react-remove-prop-types": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-remove-prop-types/-/babel-plugin-transform-react-remove-prop-types-0.4.24.tgz", + "integrity": "sha512-eqj0hVcJUR57/Ug2zE1Yswsw4LhuqqHhD+8v120T1cl3kjg76QwtyBrdIk4WVwK+lAhBJVYCd/v+4nc4y+8JsA==" + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", + "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-top-level-await": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz", + "integrity": "sha512-YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ==", + "dependencies": { + "babel-plugin-jest-hoist": "^26.6.2", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": ">= 10.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-react-app": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/babel-preset-react-app/-/babel-preset-react-app-10.0.1.tgz", + "integrity": "sha512-b0D9IZ1WhhCWkrTXyFuIIgqGzSkRIH5D5AmB0bXbzYAB1OBAwHcUeyWW2LorutLWF5btNo/N7r/cIdmvvKJlYg==", + "dependencies": { + "@babel/core": "^7.16.0", + "@babel/plugin-proposal-class-properties": "^7.16.0", + "@babel/plugin-proposal-decorators": "^7.16.4", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.16.0", + "@babel/plugin-proposal-numeric-separator": "^7.16.0", + "@babel/plugin-proposal-optional-chaining": "^7.16.0", + "@babel/plugin-proposal-private-methods": "^7.16.0", + "@babel/plugin-transform-flow-strip-types": "^7.16.0", + "@babel/plugin-transform-react-display-name": "^7.16.0", + "@babel/plugin-transform-runtime": "^7.16.4", + "@babel/preset-env": "^7.16.4", + "@babel/preset-react": "^7.16.0", + "@babel/preset-typescript": "^7.16.0", + "@babel/runtime": "^7.16.3", + "babel-plugin-macros": "^3.1.0", + "babel-plugin-transform-react-remove-prop-types": "^0.4.24" + } + }, + "node_modules/babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==", + "dependencies": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + } + }, + "node_modules/babel-runtime/node_modules/core-js": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", + "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==", + "deprecated": "core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.", + "hasInstallScript": true + }, + "node_modules/babel-runtime/node_modules/regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" + }, + "node_modules/babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "bin": { + "babylon": "bin/babylon.js" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dependencies": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base/node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base64-arraybuffer-es6": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/base64-arraybuffer-es6/-/base64-arraybuffer-es6-0.7.0.tgz", + "integrity": "sha512-ESyU/U1CFZDJUdr+neHRhNozeCv72Y7Vm0m1DCbjX3KBjT6eYocvAJlSk6+8+HkVwXlT1FNxhGW6q3UKAlCvvw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==" + }, + "node_modules/bfj": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/bfj/-/bfj-7.0.2.tgz", + "integrity": "sha512-+e/UqUzwmzJamNF50tBV6tZPTORow7gQ96iFow+8b562OdMpEK0BcJEq2OSPEDmAbSMBQ7PKZ87ubFkgxpYWgw==", + "dependencies": { + "bluebird": "^3.5.5", + "check-types": "^11.1.1", + "hoopy": "^0.1.4", + "tryer": "^1.0.1" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "engines": { + "node": "*" + } + }, + "node_modules/bignumber.js": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.0.tgz", + "integrity": "sha512-4LwHK4nfDOraBCtst+wOWIHbu1vhvAPJK8g8nROd4iuc3PSEjWif/qwbkh8jwCJz6yDBvtU4KPynETgrfh7y3A==", + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "devOptional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "optional": true, + "dependencies": { + "file-uri-to-path": "1.0.0" + } + }, + "node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" + }, + "node_modules/bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==" + }, + "node_modules/body-parser": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/bonjour": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", + "integrity": "sha512-RaVTblr+OnEli0r/ud8InrU7D+G0y6aJhlxaLa6Pwty4+xoxboF1BsUI45tujvRpbj9dQVoglChqonGAsjEBYg==", + "dependencies": { + "array-flatten": "^2.1.0", + "deep-equal": "^1.0.1", + "dns-equal": "^1.0.0", + "dns-txt": "^2.0.2", + "multicast-dns": "^6.0.1", + "multicast-dns-service-types": "^1.1.0" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" + }, + "node_modules/browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==" + }, + "node_modules/browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dependencies": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dependencies": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "node_modules/browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dependencies": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/browserify-rsa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", + "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", + "dependencies": { + "bn.js": "^5.0.0", + "randombytes": "^2.0.1" + } + }, + "node_modules/browserify-sign": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", + "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", + "dependencies": { + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.3", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + } + }, + "node_modules/browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dependencies": { + "pako": "~1.0.5" + } + }, + "node_modules/browserslist": { + "version": "4.21.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", + "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001400", + "electron-to-chromium": "^1.4.251", + "node-releases": "^2.0.6", + "update-browserslist-db": "^1.0.9" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "node_modules/buffer-indexof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", + "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==" + }, + "node_modules/buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==" + }, + "node_modules/builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==" + }, + "node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cacache": { + "version": "15.3.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz", + "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", + "dependencies": { + "@npmcli/fs": "^1.0.0", + "@npmcli/move-file": "^1.0.1", + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "glob": "^7.1.4", + "infer-owner": "^1.0.4", + "lru-cache": "^6.0.0", + "minipass": "^3.1.1", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "mkdirp": "^1.0.3", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^8.0.1", + "tar": "^6.0.2", + "unique-filename": "^1.1.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/cacache/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dependencies": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/caller-callsite": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", + "integrity": "sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==", + "dependencies": { + "callsites": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/caller-callsite/node_modules/callsites": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", + "integrity": "sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/caller-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", + "integrity": "sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A==", + "dependencies": { + "caller-callsite": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "dependencies": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/camelcase-keys": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", + "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/camelcase-keys/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-api": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", + "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", + "dependencies": { + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001431", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001431.tgz", + "integrity": "sha512-zBUoFU0ZcxpvSt9IU66dXVT/3ctO1cy4y9cscs1szkPlcWb6pasYM144GqrUygUbT+k7cmUCW61cvskjcv0enQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + } + ] + }, + "node_modules/capture-exit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz", + "integrity": "sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==", + "dependencies": { + "rsvp": "^4.8.4" + }, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/case-sensitive-paths-webpack-plugin": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.3.0.tgz", + "integrity": "sha512-/4YgnZS8y1UXXmC02xD5rRrBEu6T5ub+mQHLNRj0fzTRbgdBYhsNo2V5EqwgqrExjxsjtF/OpAKAMkKsxbD5XQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "engines": { + "node": ">=10" + } + }, + "node_modules/check-types": { + "version": "11.1.2", + "resolved": "https://registry.npmjs.org/check-types/-/check-types-11.1.2.tgz", + "integrity": "sha512-tzWzvgePgLORb9/3a0YenggReLKAIb2owL03H2Xdoe5pKcUyWRSEQ8xfCar8t2SIAuEDwtmx2da1YB52YuHQMQ==" + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "devOptional": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "engines": { + "node": ">=10" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "engines": { + "node": ">=6.0" + } + }, + "node_modules/ci-info": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.6.1.tgz", + "integrity": "sha512-up5ggbaDqOqJ4UqLKZ2naVkyqSJQgJi5lwD6b6mM748ysrghDBX0bx/qJTUHzw7zu6Mq4gycviSF5hJnwceD8w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/cjs-module-lexer": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-0.6.0.tgz", + "integrity": "sha512-uc2Vix1frTfnuzxxu1Hp4ktSvM3QaI4oXl4ZUqL1wjTu/BGki9TrCWoqLTg/drR1KwAEarXuRFCG2Svr1GxPFw==" + }, + "node_modules/class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dependencies": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/classnames": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz", + "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==", + "dev": true + }, + "node_modules/clean-css": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", + "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-truncate": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", + "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", + "dev": true, + "dependencies": { + "slice-ansi": "^5.0.0", + "string-width": "^5.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "node_modules/cliui/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/cliui/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/coa": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz", + "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==", + "dependencies": { + "@types/q": "^1.5.1", + "chalk": "^2.4.1", + "q": "^1.1.2" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/coa/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/coa/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/coa/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/coa/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/coa/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/coa/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/coa/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", + "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==" + }, + "node_modules/collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==", + "dependencies": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/color": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", + "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", + "dependencies": { + "color-convert": "^1.9.3", + "color-string": "^1.6.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/color-string": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "dependencies": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "node_modules/color/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/colord": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", + "dev": true + }, + "node_modules/colorette": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", + "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", + "dev": true + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/common-tags": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz", + "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" + }, + "node_modules/component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" + }, + "node_modules/compose-function": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/compose-function/-/compose-function-3.0.3.tgz", + "integrity": "sha512-xzhzTJ5eC+gmIzvZq+C3kCJHsp9os6tJkrigDRZclyGtOKINbZtE8n1Tzmeh32jW+BUDPbvZpibwvJHBLGMVwg==", + "dependencies": { + "arity-n": "^1.0.4" + } + }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "dependencies": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/compression/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "engines": [ + "node >= 0.8" + ], + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/concat-stream/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/concat-stream/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/concat-stream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/concat-stream/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/confusing-browser-globals": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz", + "integrity": "sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==" + }, + "node_modules/connect-history-api-fallback": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", + "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/console-browserify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" + }, + "node_modules/constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==" + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" + }, + "node_modules/cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" + }, + "node_modules/copy-concurrently": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", + "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", + "dependencies": { + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" + } + }, + "node_modules/copy-concurrently/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/core-js": { + "version": "3.26.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.26.1.tgz", + "integrity": "sha512-21491RRQVzUn0GGM9Z1Jrpr6PNPxPi+Za8OM9q4tksTSnlbXXGKK1nXNg/QvwFYettXvSX6zWKCtHHfjN4puyA==", + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-compat": { + "version": "3.26.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.26.1.tgz", + "integrity": "sha512-622/KzTudvXCDLRw70iHW4KKs1aGpcRcowGWyYJr2DEBfRrd6hNJybxSWJFuZYD4ma86xhrwDDHxmDaIq4EA8A==", + "dependencies": { + "browserslist": "^4.21.4" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-pure": { + "version": "3.26.1", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.26.1.tgz", + "integrity": "sha512-VVXcDpp/xJ21KdULRq/lXdLzQAtX7+37LzpyfFM973il0tWSsDEoyzG38G14AjTpK9VTfiNM9jnFauq/CpaWGQ==", + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/cosmiconfig/node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/create-ecdh": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", + "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "dependencies": { + "bn.js": "^4.1.0", + "elliptic": "^6.5.3" + } + }, + "node_modules/create-ecdh/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dependencies": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "node_modules/create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dependencies": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "node_modules/cross-fetch": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", + "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", + "dependencies": { + "node-fetch": "2.6.7" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dependencies": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + }, + "engines": { + "node": "*" + } + }, + "node_modules/crypto-random-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", + "integrity": "sha512-GsVpkFPlycH7/fRR7Dhcmnoii54gV1nz7y4CWyeFS14N+JVBBhY+r8amRHE4BwSYal7BPTDp8isvAlCxyFt3Hg==", + "engines": { + "node": ">=4" + } + }, + "node_modules/css": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", + "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", + "dependencies": { + "inherits": "^2.0.3", + "source-map": "^0.6.1", + "source-map-resolve": "^0.5.2", + "urix": "^0.1.0" + } + }, + "node_modules/css-blank-pseudo": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-0.1.4.tgz", + "integrity": "sha512-LHz35Hr83dnFeipc7oqFDmsjHdljj3TQtxGGiNWSOsTLIAubSm4TEz8qCaKFpk7idaQ1GfWscF4E6mgpBysA1w==", + "dependencies": { + "postcss": "^7.0.5" + }, + "bin": { + "css-blank-pseudo": "cli.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/css-color-names": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz", + "integrity": "sha512-zj5D7X1U2h2zsXOAM8EyUREBnnts6H+Jm+d1M2DbiQQcUtnqgQsMrdo8JW9R80YFUmIdBZeMu5wvYM7hcgWP/Q==", + "engines": { + "node": "*" + } + }, + "node_modules/css-declaration-sorter": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz", + "integrity": "sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA==", + "dependencies": { + "postcss": "^7.0.1", + "timsort": "^0.3.0" + }, + "engines": { + "node": ">4" + } + }, + "node_modules/css-functions-list": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/css-functions-list/-/css-functions-list-3.1.0.tgz", + "integrity": "sha512-/9lCvYZaUbBGvYUgYGFJ4dcYiyqdhSjG7IPVluoV8A1ILjkF7ilmhp1OGUz8n+nmBcu0RNrQAzgD8B6FJbrt2w==", + "dev": true, + "engines": { + "node": ">=12.22" + } + }, + "node_modules/css-has-pseudo": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-0.10.0.tgz", + "integrity": "sha512-Z8hnfsZu4o/kt+AuFzeGpLVhFOGO9mluyHBaA2bA8aCGTwah5sT3WV/fTHH8UNZUytOIImuGPrl/prlb4oX4qQ==", + "dependencies": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^5.0.0-rc.4" + }, + "bin": { + "css-has-pseudo": "cli.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/css-has-pseudo/node_modules/cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/css-has-pseudo/node_modules/postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "dependencies": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/css-loader": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-4.3.0.tgz", + "integrity": "sha512-rdezjCjScIrsL8BSYszgT4s476IcNKt6yX69t0pHjJVnPUTDpn4WfIpDQTN3wCJvUvfsz/mFjuGOekf3PY3NUg==", + "dependencies": { + "camelcase": "^6.0.0", + "cssesc": "^3.0.0", + "icss-utils": "^4.1.1", + "loader-utils": "^2.0.0", + "postcss": "^7.0.32", + "postcss-modules-extract-imports": "^2.0.0", + "postcss-modules-local-by-default": "^3.0.3", + "postcss-modules-scope": "^2.2.0", + "postcss-modules-values": "^3.0.0", + "postcss-value-parser": "^4.1.0", + "schema-utils": "^2.7.1", + "semver": "^7.3.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.27.0 || ^5.0.0" + } + }, + "node_modules/css-prefers-color-scheme": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-3.1.1.tgz", + "integrity": "sha512-MTu6+tMs9S3EUqzmqLXEcgNRbNkkD/TGFvowpeoWJn5Vfq7FMgsmRQs9X5NXAURiOBmOxm/lLjsDNXDE6k9bhg==", + "dependencies": { + "postcss": "^7.0.5" + }, + "bin": { + "css-prefers-color-scheme": "cli.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/css-rule-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/css-rule-stream/-/css-rule-stream-1.1.0.tgz", + "integrity": "sha512-qiio/Zkr8I19jh/XuzEkK8OKDQRTrEYaRyIHy4Bwh/tPUe0w8GcQs7r6x24Yc9lT+FbnZFYULxEIXCmaymguUQ==", + "dev": true, + "dependencies": { + "css-tokenize": "^1.0.1", + "duplexer2": "0.0.2", + "ldjson-stream": "^1.2.1", + "through2": "^0.6.3" + }, + "bin": { + "css-rule-stream": "index.js" + } + }, + "node_modules/css-rule-stream/node_modules/readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/css-rule-stream/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true + }, + "node_modules/css-rule-stream/node_modules/through2": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", + "integrity": "sha512-RkK/CCESdTKQZHdmKICijdKKsCRVHs5KsLZ6pACAmF/1GPUQhonHSXWNERctxEp7RmvjdNbZTL5z9V7nSCXKcg==", + "dev": true, + "dependencies": { + "readable-stream": ">=1.0.33-1 <1.1.0-0", + "xtend": ">=4.0.0 <4.1.0-0" + } + }, + "node_modules/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-select-base-adapter": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz", + "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==" + }, + "node_modules/css-tokenize": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/css-tokenize/-/css-tokenize-1.0.1.tgz", + "integrity": "sha512-gLmmbJdwH9HLY4bcA17lnZ8GgPwEXRbvxBJGHnkiB6gLhRpTzjkjtMIvz7YORGW/Ptv2oMk8b5g+u7mRD6Dd7A==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "readable-stream": "^1.0.33" + } + }, + "node_modules/css-tokenize/node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/css-tokenize/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true + }, + "node_modules/css-tree": { + "version": "1.0.0-alpha.37", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz", + "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==", + "dependencies": { + "mdn-data": "2.0.4", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cssdb": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-4.4.0.tgz", + "integrity": "sha512-LsTAR1JPEM9TpGhl/0p3nQecC2LJ0kD8X5YARu1hk/9I1gril5vDtMZyNxcEpxxDj34YNck/ucjuoUd66K03oQ==" + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssnano": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-4.1.11.tgz", + "integrity": "sha512-6gZm2htn7xIPJOHY824ERgj8cNPgPxyCSnkXc4v7YvNW+TdVfzgngHcEhy/8D11kUWRUMbke+tC+AUcUsnMz2g==", + "dependencies": { + "cosmiconfig": "^5.0.0", + "cssnano-preset-default": "^4.0.8", + "is-resolvable": "^1.0.0", + "postcss": "^7.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/cssnano-preset-default": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-4.0.8.tgz", + "integrity": "sha512-LdAyHuq+VRyeVREFmuxUZR1TXjQm8QQU/ktoo/x7bz+SdOge1YKc5eMN6pRW7YWBmyq59CqYba1dJ5cUukEjLQ==", + "dependencies": { + "css-declaration-sorter": "^4.0.1", + "cssnano-util-raw-cache": "^4.0.1", + "postcss": "^7.0.0", + "postcss-calc": "^7.0.1", + "postcss-colormin": "^4.0.3", + "postcss-convert-values": "^4.0.1", + "postcss-discard-comments": "^4.0.2", + "postcss-discard-duplicates": "^4.0.2", + "postcss-discard-empty": "^4.0.1", + "postcss-discard-overridden": "^4.0.1", + "postcss-merge-longhand": "^4.0.11", + "postcss-merge-rules": "^4.0.3", + "postcss-minify-font-values": "^4.0.2", + "postcss-minify-gradients": "^4.0.2", + "postcss-minify-params": "^4.0.2", + "postcss-minify-selectors": "^4.0.2", + "postcss-normalize-charset": "^4.0.1", + "postcss-normalize-display-values": "^4.0.2", + "postcss-normalize-positions": "^4.0.2", + "postcss-normalize-repeat-style": "^4.0.2", + "postcss-normalize-string": "^4.0.2", + "postcss-normalize-timing-functions": "^4.0.2", + "postcss-normalize-unicode": "^4.0.1", + "postcss-normalize-url": "^4.0.1", + "postcss-normalize-whitespace": "^4.0.2", + "postcss-ordered-values": "^4.1.2", + "postcss-reduce-initial": "^4.0.3", + "postcss-reduce-transforms": "^4.0.2", + "postcss-svgo": "^4.0.3", + "postcss-unique-selectors": "^4.0.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/cssnano-util-get-arguments": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz", + "integrity": "sha512-6RIcwmV3/cBMG8Aj5gucQRsJb4vv4I4rn6YjPbVWd5+Pn/fuG+YseGvXGk00XLkoZkaj31QOD7vMUpNPC4FIuw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/cssnano-util-get-match": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz", + "integrity": "sha512-JPMZ1TSMRUPVIqEalIBNoBtAYbi8okvcFns4O0YIhcdGebeYZK7dMyHJiQ6GqNBA9kE0Hym4Aqym5rPdsV/4Cw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/cssnano-util-raw-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz", + "integrity": "sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA==", + "dependencies": { + "postcss": "^7.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/cssnano-util-same-parent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz", + "integrity": "sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/cssnano/node_modules/cosmiconfig": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", + "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "dependencies": { + "import-fresh": "^2.0.0", + "is-directory": "^0.3.1", + "js-yaml": "^3.13.1", + "parse-json": "^4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssnano/node_modules/import-fresh": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", + "integrity": "sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==", + "dependencies": { + "caller-path": "^2.0.0", + "resolve-from": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssnano/node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssnano/node_modules/resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/csso": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "dependencies": { + "css-tree": "^1.1.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/csso/node_modules/css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "dependencies": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/csso/node_modules/mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==" + }, + "node_modules/cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==" + }, + "node_modules/cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dependencies": { + "cssom": "~0.3.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==" + }, + "node_modules/csstype": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", + "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==", + "dev": true + }, + "node_modules/cyclist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", + "integrity": "sha512-NJGVKPS81XejHcLhaLJS7plab0fK3slPh11mESeeDq2W4ZI5kUKK/LRRdVDvjJseojbPB7ZwjnyOybg3Igea/A==" + }, + "node_modules/d": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "dependencies": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } + }, + "node_modules/damerau-levenshtein": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", + "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==" + }, + "node_modules/data-urls": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "dependencies": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/data-urls/node_modules/tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/data-urls/node_modules/whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "dependencies": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/date-fns": { + "version": "2.29.3", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.29.3.tgz", + "integrity": "sha512-dDCnyH2WnnKusqvZZ6+jA1O51Ibt8ZMRNkDZdyAyK4YfbDwa/cEmuztzG5pk6hqlp9aSBPYcjOlktquahGwGeA==", + "engines": { + "node": ">=0.11" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/date-fns" + } + }, + "node_modules/date-fns-tz": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/date-fns-tz/-/date-fns-tz-1.3.7.tgz", + "integrity": "sha512-1t1b8zyJo+UI8aR+g3iqr5fkUHWpd58VBx8J/ZSQ+w7YrGlw80Ag4sA86qkfCXRBLmMc4I2US+aPMd4uKvwj5g==", + "peerDependencies": { + "date-fns": ">=2.0.0" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decamelize-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", + "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", + "dev": true, + "dependencies": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/decamelize-keys/node_modules/map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decimal.js": { + "version": "10.4.2", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.2.tgz", + "integrity": "sha512-ic1yEvwT6GuvaYwBLLY6/aFFgjZdySKTE8en/fkU3QICTmRtgtSlFn0u0BXN06InZwtfCelR7j8LRiDI/02iGA==" + }, + "node_modules/decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==" + }, + "node_modules/deep-equal": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", + "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", + "dependencies": { + "is-arguments": "^1.0.4", + "is-date-object": "^1.0.1", + "is-regex": "^1.0.4", + "object-is": "^1.0.1", + "object-keys": "^1.1.1", + "regexp.prototype.flags": "^1.2.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" + }, + "node_modules/deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/default-gateway": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-4.2.0.tgz", + "integrity": "sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA==", + "dependencies": { + "execa": "^1.0.0", + "ip-regex": "^2.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/default-gateway/node_modules/cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/default-gateway/node_modules/execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dependencies": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/default-gateway/node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/default-gateway/node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/default-gateway/node_modules/npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", + "dependencies": { + "path-key": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/default-gateway/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/default-gateway/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/default-gateway/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/default-gateway/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/default-gateway/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/define-properties": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "dependencies": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dependencies": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/del": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", + "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==", + "dependencies": { + "@types/glob": "^7.1.1", + "globby": "^6.1.0", + "is-path-cwd": "^2.0.0", + "is-path-in-cwd": "^2.0.0", + "p-map": "^2.0.0", + "pify": "^4.0.1", + "rimraf": "^2.6.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/del/node_modules/array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==", + "dependencies": { + "array-uniq": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/del/node_modules/globby": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha512-KVbFv2TQtbzCoxAnfD6JcHZTYCzyliEaaeM/gH8qQdkKr5s0OP9scEgvdcngyk7AVdY6YVW/TJHd+lQ/Df3Daw==", + "dependencies": { + "array-union": "^1.0.1", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/del/node_modules/globby/node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/del/node_modules/p-map": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", + "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/del/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/des.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", + "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "dependencies": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" + }, + "node_modules/detect-port-alt": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz", + "integrity": "sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==", + "dependencies": { + "address": "^1.0.1", + "debug": "^2.6.0" + }, + "bin": { + "detect": "bin/detect-port", + "detect-port": "bin/detect-port" + }, + "engines": { + "node": ">= 4.2.1" + } + }, + "node_modules/detect-port-alt/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/detect-port-alt/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/diff-sequences": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.3.1.tgz", + "integrity": "sha512-hlM3QR272NXCi4pq+N4Kok4kOp6EsgOM3ZSpJI7Da3UAs+Ttsi8MRmB6trM/lhyzUxGfOgnpkHtgqm5Q/CTcfQ==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dependencies": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "node_modules/diffie-hellman/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dns-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", + "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==" + }, + "node_modules/dns-packet": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.4.tgz", + "integrity": "sha512-BQ6F4vycLXBvdrJZ6S3gZewt6rcrks9KBgM9vrhW+knGRqc8uEdT7fuCwloc7nny5xNoMJ17HGH0R/6fpo8ECA==", + "dependencies": { + "ip": "^1.1.0", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/dns-txt": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", + "integrity": "sha512-Ix5PrWjphuSoUXV/Zv5gaFHjnaJtb02F2+Si3Ht9dyJ87+Z/lMmy+dpNHtTGraNK958ndXq2i+GLkWsWHcKaBQ==", + "dependencies": { + "buffer-indexof": "^1.0.0" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/doiuse": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/doiuse/-/doiuse-4.4.1.tgz", + "integrity": "sha512-TUpr1/YNg20IB09tZmwGCTsTQoxj8jUld/hUZprZMj8vj0VpAJySXEWCr8WMvqvgzk0/kG/FxeSMGKode4UjPg==", + "dev": true, + "dependencies": { + "browserslist": "^4.16.1", + "caniuse-lite": "^1.0.30001179", + "css-rule-stream": "^1.1.0", + "duplexer2": "0.0.2", + "ldjson-stream": "^1.2.1", + "multimatch": "^5.0.0", + "postcss": "^8.2.4", + "source-map": "^0.7.3", + "through2": "^4.0.2", + "yargs": "^16.2.0" + }, + "bin": { + "doiuse": "cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/doiuse/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/doiuse/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/doiuse/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/doiuse/node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/doiuse/node_modules/postcss": { + "version": "8.4.19", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.19.tgz", + "integrity": "sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + } + ], + "dependencies": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/doiuse/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/doiuse/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/doiuse/node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/doiuse/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/dom-converter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", + "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", + "dependencies": { + "utila": "~0.4" + } + }, + "node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domain-browser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", + "engines": { + "node": ">=0.4", + "npm": ">=1.2" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/domexception": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", + "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "dependencies": { + "webidl-conversions": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/domexception/node_modules/webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "dependencies": { + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dot-prop/node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/dotenv": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz", + "integrity": "sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/dotenv-expand": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-5.1.0.tgz", + "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==" + }, + "node_modules/duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" + }, + "node_modules/duplexer2": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz", + "integrity": "sha512-+AWBwjGadtksxjOQSFDhPNQbed7icNXApT4+2BNpsXzcCBiInq2H9XW0O8sfHFaPmnQRs7cg/P0fAr2IWQSW0g==", + "dev": true, + "dependencies": { + "readable-stream": "~1.1.9" + } + }, + "node_modules/duplexer2/node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/duplexer2/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true + }, + "node_modules/duplexify": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "dependencies": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + } + }, + "node_modules/duplexify/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/duplexify/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/duplexify/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/duplexify/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" + }, + "node_modules/ejs": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.7.4.tgz", + "integrity": "sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==", + "hasInstallScript": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.4.284", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", + "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==" + }, + "node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/elliptic/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/emittery": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.7.2.tgz", + "integrity": "sha512-A8OG5SR/ij3SsJdWDJdkkSYUjQdCUx6APQXem0SaEePBSRg4eymGYwBkKo1Y6DU+af/Jn2dBQqDBvjnr9Vi8nQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/enhanced-resolve": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz", + "integrity": "sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==", + "dependencies": { + "graceful-fs": "^4.1.2", + "memory-fs": "^0.5.0", + "tapable": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/enhanced-resolve/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/enhanced-resolve/node_modules/memory-fs": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", + "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", + "dependencies": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + }, + "engines": { + "node": ">=4.3.0 <5.0.0 || >=5.10" + } + }, + "node_modules/enhanced-resolve/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/enhanced-resolve/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/enhanced-resolve/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dependencies": { + "ansi-colors": "^4.1.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/env-cmd": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/env-cmd/-/env-cmd-10.1.0.tgz", + "integrity": "sha512-mMdWTT9XKN7yNth/6N6g2GuKuJTsKMDHlQFUDacb/heQRRWOTIZ42t1rMHnQu4jYxU1ajdTeJM+9eEETlqToMA==", + "dependencies": { + "commander": "^4.0.0", + "cross-spawn": "^7.0.0" + }, + "bin": { + "env-cmd": "bin/env-cmd.js" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/errno": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "dependencies": { + "prr": "~1.0.1" + }, + "bin": { + "errno": "cli.js" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/error-stack-parser": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz", + "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==", + "dependencies": { + "stackframe": "^1.3.4" + } + }, + "node_modules/es-abstract": { + "version": "1.20.4", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.4.tgz", + "integrity": "sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==", + "dependencies": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.3", + "get-symbol-description": "^1.0.0", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.2", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", + "string.prototype.trimend": "^1.0.5", + "string.prototype.trimstart": "^1.0.5", + "unbox-primitive": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-array-method-boxes-properly": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", + "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==" + }, + "node_modules/es-shim-unscopables": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", + "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", + "dependencies": { + "has": "^1.0.3" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es5-ext": { + "version": "0.10.62", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz", + "integrity": "sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==", + "hasInstallScript": true, + "dependencies": { + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.3", + "next-tick": "^1.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==", + "dependencies": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "node_modules/es6-symbol": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "dependencies": { + "d": "^1.0.1", + "ext": "^1.1.2" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/escodegen": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz", + "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==", + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/escodegen/node_modules/levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "dependencies": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/escodegen/node_modules/optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "dependencies": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/escodegen/node_modules/prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/escodegen/node_modules/type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "dependencies": { + "prelude-ls": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/eslint": { + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.17.0.tgz", + "integrity": "sha512-zJk08MiBgwuGoxes5sSQhOtibZ75pz0J35XTRlZOk9xMffhpA9BTbQZxoXZzOl5zMbleShbGwtw+1kGferfFwQ==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@eslint/eslintrc": "^0.2.2", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "eslint-scope": "^5.1.1", + "eslint-utils": "^2.1.0", + "eslint-visitor-keys": "^2.0.0", + "espree": "^7.3.1", + "esquery": "^1.2.0", + "esutils": "^2.0.2", + "file-entry-cache": "^6.0.0", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.0.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash": "^4.17.19", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.1.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", + "table": "^6.0.4", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-prettier": { + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.5.0.tgz", + "integrity": "sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==", + "dev": true, + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=7.0.0" + } + }, + "node_modules/eslint-import-resolver-node": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz", + "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==", + "dependencies": { + "debug": "^3.2.7", + "resolve": "^1.20.0" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-import-resolver-typescript": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-2.5.0.tgz", + "integrity": "sha512-qZ6e5CFr+I7K4VVhQu3M/9xGv9/YmwsEXrsm3nimw8vWaVHRDrQRp26BgCypTxBp3vUp4o5aVEJRiy0F2DFddQ==", + "dev": true, + "dependencies": { + "debug": "^4.3.1", + "glob": "^7.1.7", + "is-glob": "^4.0.1", + "resolve": "^1.20.0", + "tsconfig-paths": "^3.9.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "*", + "eslint-plugin-import": "*" + } + }, + "node_modules/eslint-module-utils": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.4.tgz", + "integrity": "sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==", + "dependencies": { + "debug": "^3.2.7" + }, + "engines": { + "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-flowtype": { + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-flowtype/-/eslint-plugin-flowtype-5.10.0.tgz", + "integrity": "sha512-vcz32f+7TP+kvTUyMXZmCnNujBQZDNmcqPImw8b9PZ+16w1Qdm6ryRuYZYVaG9xRqqmAPr2Cs9FAX5gN+x/bjw==", + "dependencies": { + "lodash": "^4.17.15", + "string-natural-compare": "^3.0.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "peerDependencies": { + "eslint": "^7.1.0" + } + }, + "node_modules/eslint-plugin-import": { + "version": "2.26.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.26.0.tgz", + "integrity": "sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==", + "dependencies": { + "array-includes": "^3.1.4", + "array.prototype.flat": "^1.2.5", + "debug": "^2.6.9", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-module-utils": "^2.7.3", + "has": "^1.0.3", + "is-core-module": "^2.8.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.values": "^1.1.5", + "resolve": "^1.22.0", + "tsconfig-paths": "^3.14.1" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" + } + }, + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/eslint-plugin-jest": { + "version": "24.7.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-24.7.0.tgz", + "integrity": "sha512-wUxdF2bAZiYSKBclsUMrYHH6WxiBreNjyDxbRv345TIvPeoCEgPNEn3Sa+ZrSqsf1Dl9SqqSREXMHExlMMu1DA==", + "dependencies": { + "@typescript-eslint/experimental-utils": "^4.0.1" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@typescript-eslint/eslint-plugin": ">= 4", + "eslint": ">=5" + }, + "peerDependenciesMeta": { + "@typescript-eslint/eslint-plugin": { + "optional": true + } + } + }, + "node_modules/eslint-plugin-jsx-a11y": { + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.6.1.tgz", + "integrity": "sha512-sXgFVNHiWffBq23uiS/JaP6eVR622DqwB4yTzKvGZGcPq6/yZ3WmOZfuBks/vHWo9GaFOqC2ZK4i6+C35knx7Q==", + "dependencies": { + "@babel/runtime": "^7.18.9", + "aria-query": "^4.2.2", + "array-includes": "^3.1.5", + "ast-types-flow": "^0.0.7", + "axe-core": "^4.4.3", + "axobject-query": "^2.2.0", + "damerau-levenshtein": "^1.0.8", + "emoji-regex": "^9.2.2", + "has": "^1.0.3", + "jsx-ast-utils": "^3.3.2", + "language-tags": "^1.0.5", + "minimatch": "^3.1.2", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=4.0" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" + } + }, + "node_modules/eslint-plugin-jsx-a11y/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-plugin-react": { + "version": "7.31.10", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.31.10.tgz", + "integrity": "sha512-e4N/nc6AAlg4UKW/mXeYWd3R++qUano5/o+t+wnWxIf+bLsOaH3a4q74kX3nDjYym3VBN4HyO9nEn1GcAqgQOA==", + "dependencies": { + "array-includes": "^3.1.5", + "array.prototype.flatmap": "^1.3.0", + "doctrine": "^2.1.0", + "estraverse": "^5.3.0", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.5", + "object.fromentries": "^2.0.5", + "object.hasown": "^1.1.1", + "object.values": "^1.1.5", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.3", + "semver": "^6.3.0", + "string.prototype.matchall": "^4.0.7" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", + "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" + } + }, + "node_modules/eslint-plugin-react/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-react/node_modules/resolve": { + "version": "2.0.0-next.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz", + "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==", + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/eslint-plugin-react/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-plugin-testing-library": { + "version": "3.10.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-3.10.2.tgz", + "integrity": "sha512-WAmOCt7EbF1XM8XfbCKAEzAPnShkNSwcIsAD2jHdsMUT9mZJPjLCG7pMzbcC8kK366NOuGip8HKLDC+Xk4yIdA==", + "dependencies": { + "@typescript-eslint/experimental-utils": "^3.10.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0", + "npm": ">=6" + }, + "peerDependencies": { + "eslint": "^5 || ^6 || ^7" + } + }, + "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/experimental-utils": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-3.10.1.tgz", + "integrity": "sha512-DewqIgscDzmAfd5nOGe4zm6Bl7PKtMG2Ad0KG8CUZAHlXfAKTF9Ol5PXhiMh39yRL2ChRH1cuuUGOcVyyrhQIw==", + "dependencies": { + "@types/json-schema": "^7.0.3", + "@typescript-eslint/types": "3.10.1", + "@typescript-eslint/typescript-estree": "3.10.1", + "eslint-scope": "^5.0.0", + "eslint-utils": "^2.0.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + } + }, + "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/types": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-3.10.1.tgz", + "integrity": "sha512-+3+FCUJIahE9q0lDi1WleYzjCwJs5hIsbugIgnbB+dSCYUxl8L6PwmsyOPFZde2hc1DlTo/xnkOgiTLSyAbHiQ==", + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/typescript-estree": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-3.10.1.tgz", + "integrity": "sha512-QbcXOuq6WYvnB3XPsZpIwztBoquEYLXh2MtwVU+kO8jgYCiv4G5xrSP/1wg4tkvrEE+esZVquIPX/dxPlePk1w==", + "dependencies": { + "@typescript-eslint/types": "3.10.1", + "@typescript-eslint/visitor-keys": "3.10.1", + "debug": "^4.1.1", + "glob": "^7.1.6", + "is-glob": "^4.0.1", + "lodash": "^4.17.15", + "semver": "^7.3.2", + "tsutils": "^3.17.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/visitor-keys": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-3.10.1.tgz", + "integrity": "sha512-9JgC82AaQeglebjZMgYR5wgmfUdUc+EitGUUMW8u2nDckaeimzW+VsoLV6FoimPv2id3VQzfjwBxEMVz08ameQ==", + "dependencies": { + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/eslint-plugin-testing-library/node_modules/eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "dependencies": { + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/eslint-plugin-testing-library/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-scope/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dependencies": { + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=5" + } + }, + "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "devOptional": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint-webpack-plugin": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/eslint-webpack-plugin/-/eslint-webpack-plugin-2.7.0.tgz", + "integrity": "sha512-bNaVVUvU4srexGhVcayn/F4pJAz19CWBkKoMx7aSQ4wtTbZQCnG5O9LHCE42mM+JSKOUp7n6vd5CIwzj7lOVGA==", + "dependencies": { + "@types/eslint": "^7.29.0", + "arrify": "^2.0.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "schema-utils": "^3.1.1" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0", + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/eslint-webpack-plugin/node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/eslint/node_modules/eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "dependencies": { + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/eslint/node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint/node_modules/ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/espree": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", + "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "dependencies": { + "acorn": "^7.4.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^1.3.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/espree/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==" + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==" + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/eventsource": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-2.0.2.tgz", + "integrity": "sha512-IzUmBGPR3+oUG9dUeXynyNmf91/3zUSJg1lCktzKw47OXuhco54U3r9B7O4XX+Rb1Itm9OZ2b0RkTs10bICOxA==", + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dependencies": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/exec-sh": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.6.tgz", + "integrity": "sha512-nQn+hI3yp+oD0huYhKwvYI32+JFeq+XkNcD1GAo3Y/MjxsfVGmrrzrnzjWiNY6f+pUCP440fThsFh5gZrRAU/w==" + }, + "node_modules/execa": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-6.1.0.tgz", + "integrity": "sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.1", + "human-signals": "^3.0.1", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^3.0.7", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exenv": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/exenv/-/exenv-1.2.2.tgz", + "integrity": "sha512-Z+ktTxTwv9ILfgKCk32OX3n/doe+OcLTRtqK9pcL+JsP3J1/VW8Uvl4ZjLlKqeW4rzK4oesDOGMEMRIZqtP4Iw==" + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==", + "dependencies": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/expand-brackets/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/expect": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.3.1.tgz", + "integrity": "sha512-gGb1yTgU30Q0O/tQq+z30KBWv24ApkMgFUpvKBkyLUBL68Wv8dHdJxTBZFl/iT8K/bqDHvUYRH6IIN3rToopPA==", + "dev": true, + "dependencies": { + "@jest/expect-utils": "^29.3.1", + "jest-get-type": "^29.2.0", + "jest-matcher-utils": "^29.3.1", + "jest-message-util": "^29.3.1", + "jest-util": "^29.3.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/express": { + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/ext": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", + "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==", + "dependencies": { + "type": "^2.7.2" + } + }, + "node_modules/ext/node_modules/type": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", + "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==" + }, + "node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dependencies": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fake-indexeddb": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fake-indexeddb/-/fake-indexeddb-4.0.0.tgz", + "integrity": "sha512-oCfWSJ/qvQn1XPZ8SHX6kY3zr1t+bN7faZ/lltGY0SBGhFOPXnWf0+pbO/MOAgfMx6khC2gK3S/bvAgQpuQHDQ==", + "dev": true, + "dependencies": { + "realistic-structured-clone": "^3.0.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/fast-glob": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==" + }, + "node_modules/fastest-levenshtein": { + "version": "1.0.16", + "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", + "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", + "dev": true, + "engines": { + "node": ">= 4.9.1" + } + }, + "node_modules/fastq": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", + "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "dependencies": { + "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/figgy-pudding": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", + "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==" + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/file-loader": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.1.1.tgz", + "integrity": "sha512-Klt8C4BjWSXYQAfhpYYkG4qHNTna4toMHEbWrI5IuVoxbU6uiDKeKAP99R8mmbJi3lvewn/jQBOgU4+NS3tDQw==", + "dependencies": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/file-loader/node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "optional": true + }, + "node_modules/filesize": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/filesize/-/filesize-6.1.0.tgz", + "integrity": "sha512-LpCHtPQ3sFx67z+uh2HnSyWSLLu5Jxo21795uRDuar/EOuYWXib5EmPaGIBuSnRqH2IODiKA2k5re/K9OnN/Yg==", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dependencies": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==" + }, + "node_modules/flatten": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.3.tgz", + "integrity": "sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg==", + "deprecated": "flatten is deprecated in favor of utility frameworks such as lodash." + }, + "node_modules/flush-write-stream": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", + "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", + "dependencies": { + "inherits": "^2.0.3", + "readable-stream": "^2.3.6" + } + }, + "node_modules/flush-write-stream/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/flush-write-stream/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/flush-write-stream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/flush-write-stream/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/follow-redirects": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fork-ts-checker-webpack-plugin": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-4.1.6.tgz", + "integrity": "sha512-DUxuQaKoqfNne8iikd14SAkh5uw4+8vNifp6gmA73yYNS6ywLIWSLD/n/mBzHQRpW3J7rbATEakmiA8JvkTyZw==", + "dependencies": { + "@babel/code-frame": "^7.5.5", + "chalk": "^2.4.1", + "micromatch": "^3.1.10", + "minimatch": "^3.0.4", + "semver": "^5.6.0", + "tapable": "^1.0.0", + "worker-rpc": "^0.1.0" + }, + "engines": { + "node": ">=6.11.5", + "yarn": ">=1.0.0" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dependencies": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/braces/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", + "dependencies": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/fill-range/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==", + "dependencies": { + "map-cache": "^0.2.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==", + "dependencies": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + } + }, + "node_modules/from2/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/from2/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/from2/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/from2/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", + "integrity": "sha512-gehEzmPn2nAwr39eay+x3X34Ra+M2QlVUTLhkXPjWdeO8RF9kszk116avgBJM3ZyNHgHXBNx+VmPaFC36k0PzA==", + "dependencies": { + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" + } + }, + "node_modules/fs-write-stream-atomic/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/fs-write-stream-atomic/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/fs-write-stream-atomic/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/fs-write-stream-atomic/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/function.prototype.name": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==" + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-own-enumerable-property-symbols": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==" + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/global-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "dependencies": { + "global-prefix": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "dependencies": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/global-prefix/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "dependencies": { + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globjoin": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz", + "integrity": "sha512-xYfnw62CKG8nLkZBfWbhWwDw02CHty86jfPcc2cr3ZfeuK9ysoVPPEUxf21bAD/rWAgk52SuBrLJlefNy8mvFg==", + "dev": true + }, + "node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + }, + "node_modules/growly": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", + "integrity": "sha512-+xGQY0YyAWCnqy7Cd++hc2JqMYzlm0dG30Jd0beaA64sROr8C4nt8Yc9V5Ro3avlSUDTN0ulqP/VBKi1/lLygw==", + "optional": true + }, + "node_modules/gzip-size": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-5.1.1.tgz", + "integrity": "sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA==", + "dependencies": { + "duplexer": "^0.1.1", + "pify": "^4.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" + }, + "node_modules/hard-rejection": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", + "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/harmony-reflect": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/harmony-reflect/-/harmony-reflect-1.6.2.tgz", + "integrity": "sha512-HIp/n38R9kQjDEziXyDTuW3vvoxxyxjxFzXLrBr18uB47GnSt+G9D29fqrpM5ZkspMcPICud3XsBJQ4Y2URg8g==" + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dependencies": { + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==", + "dependencies": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==", + "dependencies": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "bin": { + "he": "bin/he" + } + }, + "node_modules/hex-color-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/hex-color-regex/-/hex-color-regex-1.1.0.tgz", + "integrity": "sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==" + }, + "node_modules/hi-base32": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/hi-base32/-/hi-base32-0.5.1.tgz", + "integrity": "sha512-EmBBpvdYh/4XxsnUybsPag6VikPYnN30td+vQk+GI3qpahVEG9+gTkG0aXVxTjBqQ5T6ijbWIu77O+C5WFWsnA==" + }, + "node_modules/hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "dependencies": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/hoopy": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/hoopy/-/hoopy-0.1.4.tgz", + "integrity": "sha512-HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ==", + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + }, + "node_modules/hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", + "dependencies": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, + "node_modules/hpack.js/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/hpack.js/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/hpack.js/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/hpack.js/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/hsl-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/hsl-regex/-/hsl-regex-1.0.0.tgz", + "integrity": "sha512-M5ezZw4LzXbBKMruP+BNANf0k+19hDQMgpzBIYnya//Al+fjNct9Wf3b1WedLqdEs2hKBvxq/jh+DsHJLj0F9A==" + }, + "node_modules/hsla-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/hsla-regex/-/hsla-regex-1.0.0.tgz", + "integrity": "sha512-7Wn5GMLuHBjZCb2bTmnDOycho0p/7UVaAeqXZGbHrBCl6Yd/xDhQJAXe6Ga9AXJH2I5zY1dEdYw2u1UptnSBJA==" + }, + "node_modules/html-encoding-sniffer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", + "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "dependencies": { + "whatwg-encoding": "^1.0.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/html-entities": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.4.0.tgz", + "integrity": "sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA==" + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==" + }, + "node_modules/html-minifier-terser": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", + "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==", + "dependencies": { + "camel-case": "^4.1.1", + "clean-css": "^4.2.3", + "commander": "^4.1.1", + "he": "^1.2.0", + "param-case": "^3.0.3", + "relateurl": "^0.2.7", + "terser": "^4.6.3" + }, + "bin": { + "html-minifier-terser": "cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/html-tags": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.2.0.tgz", + "integrity": "sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/html-webpack-plugin": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.5.0.tgz", + "integrity": "sha512-MouoXEYSjTzCrjIxWwg8gxL5fE2X2WZJLmBYXlaJhQUH5K/b5OrqmV7T4dB7iu0xkmJ6JlUuV6fFVtnqbPopZw==", + "dependencies": { + "@types/html-minifier-terser": "^5.0.0", + "@types/tapable": "^1.0.5", + "@types/webpack": "^4.41.8", + "html-minifier-terser": "^5.0.1", + "loader-utils": "^1.2.3", + "lodash": "^4.17.15", + "pretty-error": "^2.1.1", + "tapable": "^1.1.3", + "util.promisify": "1.0.0" + }, + "engines": { + "node": ">=6.9" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/html-webpack-plugin/node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/html-webpack-plugin/node_modules/loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + }, + "node_modules/http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==" + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-parser-js": { + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", + "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==" + }, + "node_modules/http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/http-proxy-middleware": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz", + "integrity": "sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==", + "dependencies": { + "http-proxy": "^1.17.0", + "is-glob": "^4.0.0", + "lodash": "^4.17.11", + "micromatch": "^3.1.10" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/http-proxy-middleware/node_modules/braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dependencies": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/http-proxy-middleware/node_modules/braces/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/http-proxy-middleware/node_modules/fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", + "dependencies": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/http-proxy-middleware/node_modules/fill-range/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/http-proxy-middleware/node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/http-proxy-middleware/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/http-proxy-middleware/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/http-proxy-middleware/node_modules/micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/http-proxy-middleware/node_modules/to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==" + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/human-signals": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-3.0.1.tgz", + "integrity": "sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ==", + "dev": true, + "engines": { + "node": ">=12.20.0" + } + }, + "node_modules/husky": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.2.tgz", + "integrity": "sha512-Tkv80jtvbnkK3mYWxPZePGFpQ/tT3HNSs/sasF9P2YfkMezDl3ON37YN6jUUI4eTg5LcyVynlb6r4eyvOmspvg==", + "dev": true, + "bin": { + "husky": "lib/bin.js" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/typicode" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/icss-utils": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", + "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", + "dependencies": { + "postcss": "^7.0.14" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/identity-obj-proxy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/identity-obj-proxy/-/identity-obj-proxy-3.0.0.tgz", + "integrity": "sha512-00n6YnVHKrinT9t0d9+5yZC6UBNJANpYEQvL2LlX6Ab9lnmxzIRcEmTPuyGScvl1+jKuCICX1Z0Ab1pPKKdikA==", + "dependencies": { + "harmony-reflect": "^1.4.6" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/iferr": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", + "integrity": "sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA==" + }, + "node_modules/ignore": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", + "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/immer": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/immer/-/immer-8.0.1.tgz", + "integrity": "sha512-aqXhGP7//Gui2+UrEtvxZxSquQVXTpZ7KDxfCcKAF3Vysvw0CViVaW9RZ1j1xlIYqaaaipBoqdqeibkc18PNvA==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/immer" + } + }, + "node_modules/immutable": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", + "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", + "devOptional": true + }, + "node_modules/import-cwd": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz", + "integrity": "sha512-Ew5AZzJQFqrOV5BTW3EIoHAnoie1LojZLXKcCQ/yTRyVZosBhK1x1ViYjHGf5pAFOq8ZyChZp6m/fSN7pJyZtg==", + "dependencies": { + "import-from": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-from": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz", + "integrity": "sha512-0vdnLL2wSGnhlRmzHJAg5JHjt1l2vYhzJ7tNLGbeVg0fse56tpGaH0uzH+r9Slej+BSXXEHvBKDEnVSLLE9/+w==", + "dependencies": { + "resolve-from": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/import-from/node_modules/resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/import-lazy": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", + "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-local/node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/indexes-of": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", + "integrity": "sha512-bup+4tap3Hympa+JBJUG7XuOsdNQ6fxt0MHyXMKuLBKn0OqsTfvUxkUrroEX1+B2VsSHvCjiIcZVxRtYa4nllA==" + }, + "node_modules/infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==" + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "node_modules/internal-ip": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz", + "integrity": "sha512-S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg==", + "dependencies": { + "default-gateway": "^4.2.0", + "ipaddr.js": "^1.9.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/internal-slot": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "dependencies": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ip": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==" + }, + "node_modules/ip-regex": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", + "integrity": "sha512-58yWmlHpp7VYfcdTwMTvwMmqx/Elfxjd9RXTDyMsbL7lLWmhMylLEqiYVLKuLzOZqVgiWXD9MfR62Vv89VRxkw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-absolute-url": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-2.1.0.tgz", + "integrity": "sha512-vOx7VprsKyllwjSkLV79NIhpyLfr3jAp7VaTCMXOJHu4m0Ew1CZ2fcjASwmV1jI3BWuWHB013M48eyeldk9gYg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "devOptional": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dependencies": { + "ci-info": "^2.0.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/is-ci/node_modules/ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" + }, + "node_modules/is-color-stop": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-color-stop/-/is-color-stop-1.1.0.tgz", + "integrity": "sha512-H1U8Vz0cfXNujrJzEcvvwMDW9Ra+biSYA3ThdQvAnMLJkEHQXn6bWzLkxHtVYJ+Sdbx0b6finn3jZiaVe7MAHA==", + "dependencies": { + "css-color-names": "^0.0.4", + "hex-color-regex": "^1.1.0", + "hsl-regex": "^1.0.0", + "hsla-regex": "^1.0.0", + "rgb-regex": "^1.0.1", + "rgba-regex": "^1.0.0" + } + }, + "node_modules/is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dependencies": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-directory": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", + "integrity": "sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extendable/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==" + }, + "node_modules/is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-path-cwd": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-path-in-cwd": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz", + "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==", + "dependencies": { + "is-path-inside": "^2.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/is-path-inside": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", + "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", + "dependencies": { + "path-is-inside": "^1.0.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==" + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-resolvable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", + "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==" + }, + "node_modules/is-root": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", + "integrity": "sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/istanbul-lib-report/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", + "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest": { + "version": "26.6.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-26.6.0.tgz", + "integrity": "sha512-jxTmrvuecVISvKFFhOkjsWRZV7sFqdSUAd1ajOKY+/QE/aLBVstsJ/dX8GczLzwiT6ZEwwmZqtCUHLHHQVzcfA==", + "dependencies": { + "@jest/core": "^26.6.0", + "import-local": "^3.0.2", + "jest-cli": "^26.6.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-changed-files": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-26.6.2.tgz", + "integrity": "sha512-fDS7szLcY9sCtIip8Fjry9oGf3I2ht/QT21bAHm5Dmf0mD4X3ReNUf17y+bO6fR8WgbIZTlbyG1ak/53cbRzKQ==", + "dependencies": { + "@jest/types": "^26.6.2", + "execa": "^4.0.0", + "throat": "^5.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-changed-files/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-changed-files/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-changed-files/node_modules/execa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", + "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", + "dependencies": { + "cross-spawn": "^7.0.0", + "get-stream": "^5.0.0", + "human-signals": "^1.1.1", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.0", + "onetime": "^5.1.0", + "signal-exit": "^3.0.2", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/jest-changed-files/node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-changed-files/node_modules/human-signals": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", + "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", + "engines": { + "node": ">=8.12.0" + } + }, + "node_modules/jest-changed-files/node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-changed-files/node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/jest-changed-files/node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-changed-files/node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-changed-files/node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/jest-circus": { + "version": "26.6.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-26.6.0.tgz", + "integrity": "sha512-L2/Y9szN6FJPWFK8kzWXwfp+FOR7xq0cUL4lIsdbIdwz3Vh6P1nrpcqOleSzr28zOtSHQNV9Z7Tl+KkuK7t5Ng==", + "dependencies": { + "@babel/traverse": "^7.1.0", + "@jest/environment": "^26.6.0", + "@jest/test-result": "^26.6.0", + "@jest/types": "^26.6.0", + "@types/babel__traverse": "^7.0.4", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "expect": "^26.6.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^26.6.0", + "jest-matcher-utils": "^26.6.0", + "jest-message-util": "^26.6.0", + "jest-runner": "^26.6.0", + "jest-runtime": "^26.6.0", + "jest-snapshot": "^26.6.0", + "jest-util": "^26.6.0", + "pretty-format": "^26.6.0", + "stack-utils": "^2.0.2", + "throat": "^5.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-circus/node_modules/diff-sequences": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz", + "integrity": "sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==", + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/expect": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/expect/-/expect-26.6.2.tgz", + "integrity": "sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA==", + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-styles": "^4.0.0", + "jest-get-type": "^26.3.0", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-regex-util": "^26.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-diff": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz", + "integrity": "sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==", + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==", + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-matcher-utils": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz", + "integrity": "sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw==", + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-circus/node_modules/pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/jest-circus/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + }, + "node_modules/jest-cli": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-26.6.3.tgz", + "integrity": "sha512-GF9noBSa9t08pSyl3CY4frMrqp+aQXFGFkf5hEPbh/pIUFYWMK6ZLTfbmadxJVcJrdRoChlWQsA2VkJcDFK8hg==", + "dependencies": { + "@jest/core": "^26.6.3", + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.4", + "import-local": "^3.0.2", + "is-ci": "^2.0.0", + "jest-config": "^26.6.3", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "prompts": "^2.0.1", + "yargs": "^15.4.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-cli/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-cli/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-cli/node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-config": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-26.6.3.tgz", + "integrity": "sha512-t5qdIj/bCj2j7NFVHb2nFB4aUdfucDn3JRKgrZnplb8nieAirAzRSHP8uDEd+qV6ygzg9Pz4YG7UTJf94LPSyg==", + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/test-sequencer": "^26.6.3", + "@jest/types": "^26.6.2", + "babel-jest": "^26.6.3", + "chalk": "^4.0.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.4", + "jest-environment-jsdom": "^26.6.2", + "jest-environment-node": "^26.6.2", + "jest-get-type": "^26.3.0", + "jest-jasmine2": "^26.6.3", + "jest-regex-util": "^26.0.0", + "jest-resolve": "^26.6.2", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + }, + "peerDependencies": { + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-config/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-config/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-config/node_modules/jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==", + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-config/node_modules/jest-resolve": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.6.2.tgz", + "integrity": "sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ==", + "dependencies": { + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^26.6.2", + "read-pkg-up": "^7.0.1", + "resolve": "^1.18.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-config/node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-config/node_modules/pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/jest-config/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + }, + "node_modules/jest-diff": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.3.1.tgz", + "integrity": "sha512-vU8vyiO7568tmin2lA3r2DP8oRvzhvRcD4DjpXc6uGveQodyk7CKLhQlCSiwgx3g0pFaE88/KLZ0yaTWMc4Uiw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^29.3.1", + "jest-get-type": "^29.2.0", + "pretty-format": "^29.3.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-docblock": { + "version": "26.0.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-26.0.0.tgz", + "integrity": "sha512-RDZ4Iz3QbtRWycd8bUEPxQsTlYazfYn/h5R65Fc6gOfwozFhoImx+affzky/FFBuqISPTqjXomoIGJVKBWoo0w==", + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-each": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-26.6.2.tgz", + "integrity": "sha512-Mer/f0KaATbjl8MCJ+0GEpNdqmnVmDYqCTJYTvoo7rqmRiDllmp2AYN+06F93nXcY3ur9ShIjS+CO/uD+BbH4A==", + "dependencies": { + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "jest-get-type": "^26.3.0", + "jest-util": "^26.6.2", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-each/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-each/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-each/node_modules/jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==", + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-each/node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-each/node_modules/pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/jest-each/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + }, + "node_modules/jest-environment-jsdom": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-26.6.2.tgz", + "integrity": "sha512-jgPqCruTlt3Kwqg5/WVFyHIOJHsiAvhcp2qiR2QQstuG9yWox5+iHpU3ZrcBxW14T4fe5Z68jAfLRh7joCSP2Q==", + "dependencies": { + "@jest/environment": "^26.6.2", + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2", + "jsdom": "^16.4.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-environment-jsdom/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-environment-jsdom/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-environment-jsdom/node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-environment-node": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-26.6.2.tgz", + "integrity": "sha512-zhtMio3Exty18dy8ee8eJ9kjnRyZC1N4C1Nt/VShN1apyXc8rWGtJ9lI7vqiWcyyXS4BVSEn9lxAM2D+07/Tag==", + "dependencies": { + "@jest/environment": "^26.6.2", + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-environment-node/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-environment-node/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-environment-node/node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-get-type": { + "version": "29.2.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.2.0.tgz", + "integrity": "sha512-uXNJlg8hKFEnDgFsrCjznB+sTxdkuqiCL6zMgA75qEbAJjJYTs9XPrvDctrEig2GDow22T/LvHgO57iJhXB/UA==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-26.6.2.tgz", + "integrity": "sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w==", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.4", + "jest-regex-util": "^26.0.0", + "jest-serializer": "^26.6.2", + "jest-util": "^26.6.2", + "jest-worker": "^26.6.2", + "micromatch": "^4.0.2", + "sane": "^4.0.3", + "walker": "^1.0.7" + }, + "engines": { + "node": ">= 10.14.2" + }, + "optionalDependencies": { + "fsevents": "^2.1.2" + } + }, + "node_modules/jest-haste-map/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-haste-map/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-haste-map/node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-haste-map/node_modules/jest-worker": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", + "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-jasmine2": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-26.6.3.tgz", + "integrity": "sha512-kPKUrQtc8aYwBV7CqBg5pu+tmYXlvFlSFYn18ev4gPFtrRzB15N2gW/Roew3187q2w2eHuu0MU9TJz6w0/nPEg==", + "dependencies": { + "@babel/traverse": "^7.1.0", + "@jest/environment": "^26.6.2", + "@jest/source-map": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^26.6.2", + "is-generator-fn": "^2.0.0", + "jest-each": "^26.6.2", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-runtime": "^26.6.3", + "jest-snapshot": "^26.6.2", + "jest-util": "^26.6.2", + "pretty-format": "^26.6.2", + "throat": "^5.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-jasmine2/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-jasmine2/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-jasmine2/node_modules/diff-sequences": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz", + "integrity": "sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==", + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-jasmine2/node_modules/expect": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/expect/-/expect-26.6.2.tgz", + "integrity": "sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA==", + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-styles": "^4.0.0", + "jest-get-type": "^26.3.0", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-regex-util": "^26.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-jasmine2/node_modules/jest-diff": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz", + "integrity": "sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==", + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-jasmine2/node_modules/jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==", + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-jasmine2/node_modules/jest-matcher-utils": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz", + "integrity": "sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw==", + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-jasmine2/node_modules/jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-jasmine2/node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-jasmine2/node_modules/pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/jest-jasmine2/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + }, + "node_modules/jest-leak-detector": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-26.6.2.tgz", + "integrity": "sha512-i4xlXpsVSMeKvg2cEKdfhh0H39qlJlP5Ex1yQxwF9ubahboQYMgTtz5oML35AVA3B4Eu+YsmwaiKVev9KCvLxg==", + "dependencies": { + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-leak-detector/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-leak-detector/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-leak-detector/node_modules/jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==", + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-leak-detector/node_modules/pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/jest-leak-detector/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + }, + "node_modules/jest-matcher-utils": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.3.1.tgz", + "integrity": "sha512-fkRMZUAScup3txIKfMe3AIZZmPEjWEdsPJFK3AIy5qRohWqQFg1qrmKfYXR9qEkNc7OdAu2N4KPHibEmy4HPeQ==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^29.3.1", + "jest-get-type": "^29.2.0", + "pretty-format": "^29.3.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.3.1.tgz", + "integrity": "sha512-lMJTbgNcDm5z+6KDxWtqOFWlGQxD6XaYwBqHR8kmpkP+WWWG90I35kdtQHY67Ay5CSuydkTBbJG+tH9JShFCyA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.3.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.3.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-mock": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-26.6.2.tgz", + "integrity": "sha512-YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew==", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-mock/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-mock/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "26.0.0", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-26.0.0.tgz", + "integrity": "sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A==", + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-resolve": { + "version": "26.6.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.6.0.tgz", + "integrity": "sha512-tRAz2bwraHufNp+CCmAD8ciyCpXCs1NQxB5EJAmtCFy6BN81loFEGWKzYu26Y62lAJJe4X4jg36Kf+NsQyiStQ==", + "dependencies": { + "@jest/types": "^26.6.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^26.6.0", + "read-pkg-up": "^7.0.1", + "resolve": "^1.17.0", + "slash": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-26.6.3.tgz", + "integrity": "sha512-pVwUjJkxbhe4RY8QEWzN3vns2kqyuldKpxlxJlzEYfKSvY6/bMvxoFrYYzUO1Gx28yKWN37qyV7rIoIp2h8fTg==", + "dependencies": { + "@jest/types": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-snapshot": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-resolve-dependencies/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-resolve-dependencies/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-resolve/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-resolve/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-resolve/node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-runner": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-26.6.3.tgz", + "integrity": "sha512-atgKpRHnaA2OvByG/HpGA4g6CSPS/1LK0jK3gATJAoptC1ojltpmVlYC3TYgdmGp+GLuhzpH30Gvs36szSL2JQ==", + "dependencies": { + "@jest/console": "^26.6.2", + "@jest/environment": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.7.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.4", + "jest-config": "^26.6.3", + "jest-docblock": "^26.0.0", + "jest-haste-map": "^26.6.2", + "jest-leak-detector": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-resolve": "^26.6.2", + "jest-runtime": "^26.6.3", + "jest-util": "^26.6.2", + "jest-worker": "^26.6.2", + "source-map-support": "^0.5.6", + "throat": "^5.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-runner/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-runner/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-runner/node_modules/jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-runner/node_modules/jest-resolve": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.6.2.tgz", + "integrity": "sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ==", + "dependencies": { + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^26.6.2", + "read-pkg-up": "^7.0.1", + "resolve": "^1.18.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-runner/node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-runner/node_modules/jest-worker": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", + "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-runner/node_modules/pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/jest-runner/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + }, + "node_modules/jest-runtime": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-26.6.3.tgz", + "integrity": "sha512-lrzyR3N8sacTAMeonbqpnSka1dHNux2uk0qqDXVkMv2c/A3wYnvQ4EXuI013Y6+gSKSCxdaczvf4HF0mVXHRdw==", + "dependencies": { + "@jest/console": "^26.6.2", + "@jest/environment": "^26.6.2", + "@jest/fake-timers": "^26.6.2", + "@jest/globals": "^26.6.2", + "@jest/source-map": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0", + "cjs-module-lexer": "^0.6.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.4", + "jest-config": "^26.6.3", + "jest-haste-map": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-mock": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-resolve": "^26.6.2", + "jest-snapshot": "^26.6.2", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "slash": "^3.0.0", + "strip-bom": "^4.0.0", + "yargs": "^15.4.1" + }, + "bin": { + "jest-runtime": "bin/jest-runtime.js" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-runtime/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-runtime/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-runtime/node_modules/jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-runtime/node_modules/jest-resolve": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.6.2.tgz", + "integrity": "sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ==", + "dependencies": { + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^26.6.2", + "read-pkg-up": "^7.0.1", + "resolve": "^1.18.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-runtime/node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-runtime/node_modules/pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/jest-runtime/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + }, + "node_modules/jest-serializer": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-26.6.2.tgz", + "integrity": "sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g==", + "dependencies": { + "@types/node": "*", + "graceful-fs": "^4.2.4" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-snapshot": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-26.6.2.tgz", + "integrity": "sha512-OLhxz05EzUtsAmOMzuupt1lHYXCNib0ECyuZ/PZOx9TrZcC8vL0x+DUG3TL+GLX3yHG45e6YGjIm0XwDc3q3og==", + "dependencies": { + "@babel/types": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.0.0", + "chalk": "^4.0.0", + "expect": "^26.6.2", + "graceful-fs": "^4.2.4", + "jest-diff": "^26.6.2", + "jest-get-type": "^26.3.0", + "jest-haste-map": "^26.6.2", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-resolve": "^26.6.2", + "natural-compare": "^1.4.0", + "pretty-format": "^26.6.2", + "semver": "^7.3.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-snapshot/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-snapshot/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-snapshot/node_modules/diff-sequences": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz", + "integrity": "sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==", + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-snapshot/node_modules/expect": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/expect/-/expect-26.6.2.tgz", + "integrity": "sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA==", + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-styles": "^4.0.0", + "jest-get-type": "^26.3.0", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-regex-util": "^26.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-snapshot/node_modules/jest-diff": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz", + "integrity": "sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==", + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-snapshot/node_modules/jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==", + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-snapshot/node_modules/jest-matcher-utils": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz", + "integrity": "sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw==", + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-snapshot/node_modules/jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-snapshot/node_modules/jest-resolve": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.6.2.tgz", + "integrity": "sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ==", + "dependencies": { + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^26.6.2", + "read-pkg-up": "^7.0.1", + "resolve": "^1.18.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-snapshot/node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-snapshot/node_modules/pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/jest-snapshot/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + }, + "node_modules/jest-util": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.3.1.tgz", + "integrity": "sha512-7YOVZaiX7RJLv76ZfHt4nbNEzzTRiMW/IiOG7ZOKmTXmoGBxUDefgMAxQubu6WPVqP5zSzAdZG0FfLcC7HOIFQ==", + "dev": true, + "dependencies": { + "@jest/types": "^29.3.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-26.6.2.tgz", + "integrity": "sha512-NEYZ9Aeyj0i5rQqbq+tpIOom0YS1u2MVu6+euBsvpgIme+FOfRmoC4R5p0JiAUpaFvFy24xgrpMknarR/93XjQ==", + "dependencies": { + "@jest/types": "^26.6.2", + "camelcase": "^6.0.0", + "chalk": "^4.0.0", + "jest-get-type": "^26.3.0", + "leven": "^3.1.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-validate/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-validate/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-validate/node_modules/jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==", + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-validate/node_modules/pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/jest-validate/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + }, + "node_modules/jest-watch-typeahead": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/jest-watch-typeahead/-/jest-watch-typeahead-0.6.1.tgz", + "integrity": "sha512-ITVnHhj3Jd/QkqQcTqZfRgjfyRhDFM/auzgVo2RKvSwi18YMvh0WvXDJFoFED6c7jd/5jxtu4kSOb9PTu2cPVg==", + "dependencies": { + "ansi-escapes": "^4.3.1", + "chalk": "^4.0.0", + "jest-regex-util": "^26.0.0", + "jest-watcher": "^26.3.0", + "slash": "^3.0.0", + "string-length": "^4.0.1", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "jest": "^26.0.0" + } + }, + "node_modules/jest-watcher": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-26.6.2.tgz", + "integrity": "sha512-WKJob0P/Em2csiVthsI68p6aGKTIcsfjH9Gsx1f0A3Italz43e3ho0geSAVsmj09RWOELP1AZ/DXyJgOgDKxXQ==", + "dependencies": { + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "jest-util": "^26.6.2", + "string-length": "^4.0.1" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-watcher/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-watcher/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-watcher/node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/js-sha256": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/js-sha256/-/js-sha256-0.9.0.tgz", + "integrity": "sha512-sga3MHh9sgQN2+pJ9VYZ+1LPwXOxuBJBA5nrR5/ofPfuiJBE2hnjsaN8se8JznOmGLN2p49Pe5U/ttafcs/apA==" + }, + "node_modules/js-sha3": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" + }, + "node_modules/js-sha512": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha512/-/js-sha512-0.8.0.tgz", + "integrity": "sha512-PWsmefG6Jkodqt+ePTvBZCSMFgN7Clckjd0O7su3I0+BW2QWUTJNzjktHsztGLhncP2h8mcF9V9Y2Ha59pAViQ==" + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "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==", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "dependencies": { + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jsdom/node_modules/acorn": { + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/jsdom/node_modules/tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jsdom/node_modules/whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "dependencies": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-bigint": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz", + "integrity": "sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==", + "dependencies": { + "bignumber.js": "^9.0.0" + } + }, + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==" + }, + "node_modules/json5": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", + "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsx-ast-utils": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz", + "integrity": "sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==", + "dependencies": { + "array-includes": "^3.1.5", + "object.assign": "^4.1.3" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/killable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz", + "integrity": "sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==" + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "engines": { + "node": ">=6" + } + }, + "node_modules/klona": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.5.tgz", + "integrity": "sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/known-css-properties": { + "version": "0.26.0", + "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.26.0.tgz", + "integrity": "sha512-5FZRzrZzNTBruuurWpvZnvP9pum+fe0HcK8z/ooo+U+Hmp4vtbyp1/QDsqmufirXy4egGzbaH/y2uCZf+6W5Kg==", + "dev": true + }, + "node_modules/language-subtag-registry": { + "version": "0.3.22", + "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz", + "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==" + }, + "node_modules/language-tags": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.5.tgz", + "integrity": "sha512-qJhlO9cGXi6hBGKoxEG/sKZDAHD5Hnu9Hs4WbOY3pCWXDhw0N8x1NenNzm2EnNLkLkk7J2SdxAkDSbb6ftT+UQ==", + "dependencies": { + "language-subtag-registry": "~0.3.2" + } + }, + "node_modules/last-call-webpack-plugin": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/last-call-webpack-plugin/-/last-call-webpack-plugin-3.0.0.tgz", + "integrity": "sha512-7KI2l2GIZa9p2spzPIVZBYyNKkN+e/SQPpnjlTiPhdbDW3F86tdKKELxKpzJ5sgU19wQWsACULZmpTPYHeWO5w==", + "dependencies": { + "lodash": "^4.17.5", + "webpack-sources": "^1.1.0" + } + }, + "node_modules/ldjson-stream": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ldjson-stream/-/ldjson-stream-1.2.1.tgz", + "integrity": "sha512-xw/nNEXafuPSLu8NjjG3+atVVw+8U1APZAQylmwQn19Hgw6rC7QjHvP6MupnHWCrzSm9m0xs5QWkCLuRvBPjgQ==", + "dev": true, + "dependencies": { + "split2": "^0.2.1", + "through2": "^0.6.1" + } + }, + "node_modules/ldjson-stream/node_modules/readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/ldjson-stream/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true + }, + "node_modules/ldjson-stream/node_modules/through2": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", + "integrity": "sha512-RkK/CCESdTKQZHdmKICijdKKsCRVHs5KsLZ6pACAmF/1GPUQhonHSXWNERctxEp7RmvjdNbZTL5z9V7nSCXKcg==", + "dev": true, + "dependencies": { + "readable-stream": ">=1.0.33-1 <1.1.0-0", + "xtend": ">=4.0.0 <4.1.0-0" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lilconfig": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.5.tgz", + "integrity": "sha512-xaYmXZtTHPAw5m+xLN8ab9C+3a8YmV3asNSPOATITbtwrfbwaLJj8h66H1WMIpALCkqsIzK3h7oQ+PdX+LQ9Eg==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + }, + "node_modules/lint-staged": { + "version": "13.0.3", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-13.0.3.tgz", + "integrity": "sha512-9hmrwSCFroTSYLjflGI8Uk+GWAwMB4OlpU4bMJEAT5d/llQwtYKoim4bLOyLCuWFAhWEupE0vkIFqtw/WIsPug==", + "dev": true, + "dependencies": { + "cli-truncate": "^3.1.0", + "colorette": "^2.0.17", + "commander": "^9.3.0", + "debug": "^4.3.4", + "execa": "^6.1.0", + "lilconfig": "2.0.5", + "listr2": "^4.0.5", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-inspect": "^1.12.2", + "pidtree": "^0.6.0", + "string-argv": "^0.3.1", + "yaml": "^2.1.1" + }, + "bin": { + "lint-staged": "bin/lint-staged.js" + }, + "engines": { + "node": "^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/lint-staged" + } + }, + "node_modules/lint-staged/node_modules/commander": { + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.4.1.tgz", + "integrity": "sha512-5EEkTNyHNGFPD2H+c/dXXfQZYa/scCKasxWcXJaWnNJ99pnQN9Vnmqow+p+PlFPE63Q6mThaZws1T+HxfpgtPw==", + "dev": true, + "engines": { + "node": "^12.20.0 || >=14" + } + }, + "node_modules/listr2": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-4.0.5.tgz", + "integrity": "sha512-juGHV1doQdpNT3GSTs9IUN43QJb7KHdF9uqg7Vufs/tG9VTzpFphqF4pm/ICdAABGQxsyNn9CiYA3StkI6jpwA==", + "dev": true, + "dependencies": { + "cli-truncate": "^2.1.0", + "colorette": "^2.0.16", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rfdc": "^1.3.0", + "rxjs": "^7.5.5", + "through": "^2.3.8", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "enquirer": ">= 2.3.0 < 3" + }, + "peerDependenciesMeta": { + "enquirer": { + "optional": true + } + } + }, + "node_modules/listr2/node_modules/cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "dependencies": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/listr2/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/listr2/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/listr2/node_modules/slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/listr2/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/loader-runner": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", + "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", + "engines": { + "node": ">=4.3.0 <5.0.0 || >=5.10" + } + }, + "node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash._reinterpolate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", + "integrity": "sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA==" + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" + }, + "node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==" + }, + "node_modules/lodash.template": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz", + "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==", + "dependencies": { + "lodash._reinterpolate": "^3.0.0", + "lodash.templatesettings": "^4.0.0" + } + }, + "node_modules/lodash.templatesettings": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz", + "integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==", + "dependencies": { + "lodash._reinterpolate": "^3.0.0" + } + }, + "node_modules/lodash.truncate": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", + "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==" + }, + "node_modules/lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==" + }, + "node_modules/log-update": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", + "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.3.0", + "cli-cursor": "^3.1.0", + "slice-ansi": "^4.0.0", + "wrap-ansi": "^6.2.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-update/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/log-update/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-update/node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/log-update/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/log-update/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/loglevel": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.8.1.tgz", + "integrity": "sha512-tCRIJM51SHjAayKwC+QAg8hT8vg6z7GSgLJKGvzuPb1Wc+hLzqtuVLxp6/HzSPOozuK+8ErAhy7U/sVzw8Dgfg==", + "engines": { + "node": ">= 0.6.0" + }, + "funding": { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/loglevel" + } + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lottie-react": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/lottie-react/-/lottie-react-2.3.1.tgz", + "integrity": "sha512-8cxd6XZZtECT6LoAhCftRdYrEpHxiouvB5EPiYA+TtCG5LHNYAdMS9IVIHcxKtWnpo7x16QfCLj1XLXZpaN81A==", + "dependencies": { + "lottie-web": "^5.9.4" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/lottie-web": { + "version": "5.9.6", + "resolved": "https://registry.npmjs.org/lottie-web/-/lottie-web-5.9.6.tgz", + "integrity": "sha512-JFs7KsHwflugH5qIXBpB4905yC1Sub2MZWtl/elvO/QC6qj1ApqbUZJyjzJseJUtVpgiDaXQLjBlIJGS7UUUXA==" + }, + "node_modules/lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/magic-string": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", + "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", + "dependencies": { + "sourcemap-codec": "^1.4.8" + } + }, + "node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/map-obj": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", + "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==", + "dependencies": { + "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mathml-tag-names": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz", + "integrity": "sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/mdn-data": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", + "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==" + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memory-fs": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", + "integrity": "sha512-cda4JKCxReDXFXRqOHPQscuIYg1PvxbE2S2GP45rnwfEK+vZaXC8C1OFvdHIbgw0DLzowXGVoxLaAmlgRy14GQ==", + "dependencies": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + }, + "node_modules/memory-fs/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/memory-fs/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/memory-fs/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/memory-fs/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/meow": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-9.0.0.tgz", + "integrity": "sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==", + "dev": true, + "dependencies": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize": "^1.2.0", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.18.0", + "yargs-parser": "^20.2.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/meow/node_modules/normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "dev": true, + "dependencies": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/meow/node_modules/type-fest": { + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", + "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/microevent.ts": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/microevent.ts/-/microevent.ts-0.1.1.tgz", + "integrity": "sha512-jo1OfR4TaEwd5HOrt5+tAZ9mqT4jmpNAusXtyfNzqVm9uiSYFZlKM1wYL4oU7azZW/PxQW53wM0S6OR1JHNa2g==" + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dependencies": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + }, + "bin": { + "miller-rabin": "bin/miller-rabin" + } + }, + "node_modules/miller-rabin/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/mini-css-extract-plugin": { + "version": "0.11.3", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.11.3.tgz", + "integrity": "sha512-n9BA8LonkOkW1/zn+IbLPQmovsL0wMb9yx75fMJQZf2X1Zoec9yTZtyMePcyu19wPkmFbzZZA6fLTotpFhQsOA==", + "dependencies": { + "loader-utils": "^1.1.0", + "normalize-url": "1.9.1", + "schema-utils": "^1.0.0", + "webpack-sources": "^1.1.0" + }, + "engines": { + "node": ">= 6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.4.0 || ^5.0.0" + } + }, + "node_modules/mini-css-extract-plugin/node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/mini-css-extract-plugin/node_modules/loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mini-css-extract-plugin/node_modules/schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dependencies": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "node_modules/minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minimist-options": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", + "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", + "dev": true, + "dependencies": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0", + "kind-of": "^6.0.3" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/minimist-options/node_modules/arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/minipass": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", + "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/mississippi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", + "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "dependencies": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^3.0.0", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mississippi/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/mississippi/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/mississippi/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/mississippi/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/mississippi/node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dependencies": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "node_modules/mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "dependencies": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/move-concurrently": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", + "integrity": "sha512-hdrFxZOycD/g6A6SoI2bB5NA/5NEqD0569+S47WZhPvm46sD50ZHdYaFmnua5lndde9rCHGjmfK7Z8BuCt/PcQ==", + "dependencies": { + "aproba": "^1.1.1", + "copy-concurrently": "^1.0.0", + "fs-write-stream-atomic": "^1.0.8", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.3" + } + }, + "node_modules/move-concurrently/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/multicast-dns": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz", + "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==", + "dependencies": { + "dns-packet": "^1.3.1", + "thunky": "^1.0.2" + }, + "bin": { + "multicast-dns": "cli.js" + } + }, + "node_modules/multicast-dns-service-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", + "integrity": "sha512-cnAsSVxIDsYt0v7HmC0hWZFwwXSh+E6PgCrREDuN/EsjgLwA5XRmlMHhSiDPrt6HxY1gTivEa/Zh7GtODoLevQ==" + }, + "node_modules/multimatch": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-5.0.0.tgz", + "integrity": "sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA==", + "dev": true, + "dependencies": { + "@types/minimatch": "^3.0.3", + "array-differ": "^3.0.0", + "array-union": "^2.1.0", + "arrify": "^2.0.1", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/nan": { + "version": "2.17.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz", + "integrity": "sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==", + "optional": true + }, + "node_modules/nanoid": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/native-url": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/native-url/-/native-url-0.2.6.tgz", + "integrity": "sha512-k4bDC87WtgrdD362gZz6zoiXQrl40kYlBmpfmSjwRO1VU0V5ccwJTlxuE72F6m3V0vc1xOf6n3UCP9QyerRqmA==", + "dependencies": { + "querystring": "^0.2.0" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==" + }, + "node_modules/natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "devOptional": true, + "peer": true + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==" + }, + "node_modules/next-tick": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" + }, + "node_modules/nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" + }, + "node_modules/no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dependencies": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node_modules/node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-forge": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", + "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==", + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==" + }, + "node_modules/node-libs-browser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", + "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", + "dependencies": { + "assert": "^1.1.1", + "browserify-zlib": "^0.2.0", + "buffer": "^4.3.0", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.11.0", + "domain-browser": "^1.1.1", + "events": "^3.0.0", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "0.0.1", + "process": "^0.11.10", + "punycode": "^1.2.4", + "querystring-es3": "^0.2.0", + "readable-stream": "^2.3.3", + "stream-browserify": "^2.0.1", + "stream-http": "^2.7.2", + "string_decoder": "^1.0.0", + "timers-browserify": "^2.0.4", + "tty-browserify": "0.0.0", + "url": "^0.11.0", + "util": "^0.11.0", + "vm-browserify": "^1.0.1" + } + }, + "node_modules/node-libs-browser/node_modules/buffer": { + "version": "4.9.2", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", + "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", + "dependencies": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, + "node_modules/node-libs-browser/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/node-libs-browser/node_modules/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" + }, + "node_modules/node-libs-browser/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/node-libs-browser/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/node-libs-browser/node_modules/stream-browserify": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", + "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", + "dependencies": { + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" + } + }, + "node_modules/node-libs-browser/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/node-notifier": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-8.0.2.tgz", + "integrity": "sha512-oJP/9NAdd9+x2Q+rfphB2RJCHjod70RcRLjosiPMMu5gjIfwVnOUGq2nbTjTUbmy0DJ/tFIVT30+Qe3nzl4TJg==", + "optional": true, + "dependencies": { + "growly": "^1.3.0", + "is-wsl": "^2.2.0", + "semver": "^7.3.2", + "shellwords": "^0.1.1", + "uuid": "^8.3.0", + "which": "^2.0.2" + } + }, + "node_modules/node-releases": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", + "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==" + }, + "node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-url": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-1.9.1.tgz", + "integrity": "sha512-A48My/mtCklowHBlI8Fq2jFWK4tX4lJ5E6ytFsSOq1fzpvT0SQSgKhSg7lN5c2uYFOrUAOQp6zhhJnpp1eMloQ==", + "dependencies": { + "object-assign": "^4.0.1", + "prepend-http": "^1.0.0", + "query-string": "^4.1.0", + "sort-keys": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-path": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", + "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", + "dev": true, + "dependencies": { + "path-key": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm-run-path/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/num2fraction": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", + "integrity": "sha512-Y1wZESM7VUThYY+4W+X4ySH2maqcA+p7UR+w8VWNWVAd6lwuXXWz/w/Cz43J/dI2I+PS6wD5N+bJUF+gjWvIqg==" + }, + "node_modules/nwsapi": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.2.tgz", + "integrity": "sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==" + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==", + "dependencies": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-descriptor/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-is": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", + "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==", + "dependencies": { + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.entries": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz", + "integrity": "sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz", + "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.getownpropertydescriptors": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.5.tgz", + "integrity": "sha512-yDNzckpM6ntyQiGTik1fKV1DcVDRS+w8bvpWNCBanvH5LfRX9O8WTHqQzG4RZwRAM4I0oU7TV11Lj5v0g20ibw==", + "dependencies": { + "array.prototype.reduce": "^1.0.5", + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.8" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.hasown": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.2.tgz", + "integrity": "sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==", + "dependencies": { + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.values": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", + "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dev": true, + "dependencies": { + "mimic-fn": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", + "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "dependencies": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/opn": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", + "integrity": "sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==", + "dependencies": { + "is-wsl": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/opn/node_modules/is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/optimize-css-assets-webpack-plugin": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.4.tgz", + "integrity": "sha512-wqd6FdI2a5/FdoiCNNkEvLeA//lHHfG24Ln2Xm2qqdIk4aOlsR18jwpyOihqQ8849W3qu2DX8fOYxpvTMj+93A==", + "dependencies": { + "cssnano": "^4.1.10", + "last-call-webpack-plugin": "^3.0.0" + }, + "peerDependencies": { + "webpack": "^4.0.0" + } + }, + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==" + }, + "node_modules/p-each-series": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-2.2.0.tgz", + "integrity": "sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", + "engines": { + "node": ">=4" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-retry": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-3.0.1.tgz", + "integrity": "sha512-XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w==", + "dependencies": { + "retry": "^0.12.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" + }, + "node_modules/parallel-transform": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", + "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", + "dependencies": { + "cyclist": "^1.0.1", + "inherits": "^2.0.3", + "readable-stream": "^2.1.5" + } + }, + "node_modules/parallel-transform/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/parallel-transform/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/parallel-transform/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/parallel-transform/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-asn1": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", + "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", + "dependencies": { + "asn1.js": "^5.2.0", + "browserify-aes": "^1.0.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", + "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==" + }, + "node_modules/path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==" + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==" + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "dependencies": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==" + }, + "node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pidtree": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz", + "integrity": "sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==", + "dev": true, + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "engines": { + "node": ">=6" + } + }, + "node_modules/pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==", + "dependencies": { + "pinkie": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pirates": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", + "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dependencies": { + "find-up": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-dir/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/pkg-up": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", + "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", + "dependencies": { + "find-up": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-up/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-up/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-up/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-up/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/pnp-webpack-plugin": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz", + "integrity": "sha512-7Wjy+9E3WwLOEL30D+m8TSTF7qJJUJLONBnwQp0518siuMxUQUbgZwssaFX+QKlZkjHZcw/IpZCt/H0srrntSg==", + "dependencies": { + "ts-pnp": "^1.1.6" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/portfinder": { + "version": "1.0.32", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.32.tgz", + "integrity": "sha512-on2ZJVVDXRADWE6jnQaX0ioEylzgBpQk8r55NE4wjXW1ZxO+BgDlY6DXwj20i0V8eB4SenDQ00WEaxfiIQPcxg==", + "dependencies": { + "async": "^2.6.4", + "debug": "^3.2.7", + "mkdirp": "^0.5.6" + }, + "engines": { + "node": ">= 0.12.0" + } + }, + "node_modules/portfinder/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-attribute-case-insensitive": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.2.tgz", + "integrity": "sha512-clkFxk/9pcdb4Vkn0hAHq3YnxBQ2p0CGD1dy24jN+reBck+EWxMbxSUqN4Yj7t0w8csl87K6p0gxBe1utkJsYA==", + "dependencies": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^6.0.2" + } + }, + "node_modules/postcss-browser-comments": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-browser-comments/-/postcss-browser-comments-3.0.0.tgz", + "integrity": "sha512-qfVjLfq7HFd2e0HW4s1dvU8X080OZdG46fFbIBFjW7US7YPDcWfRvdElvwMJr2LI6hMmD+7LnH2HcmXTs+uOig==", + "dependencies": { + "postcss": "^7" + }, + "engines": { + "node": ">=8.0.0" + }, + "peerDependencies": { + "browserslist": "^4" + } + }, + "node_modules/postcss-calc": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-7.0.5.tgz", + "integrity": "sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg==", + "dependencies": { + "postcss": "^7.0.27", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.0.2" + } + }, + "node_modules/postcss-color-functional-notation": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-2.0.1.tgz", + "integrity": "sha512-ZBARCypjEDofW4P6IdPVTLhDNXPRn8T2s1zHbZidW6rPaaZvcnCS2soYFIQJrMZSxiePJ2XIYTlcb2ztr/eT2g==", + "dependencies": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-color-gray": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-color-gray/-/postcss-color-gray-5.0.0.tgz", + "integrity": "sha512-q6BuRnAGKM/ZRpfDascZlIZPjvwsRye7UDNalqVz3s7GDxMtqPY6+Q871liNxsonUw8oC61OG+PSaysYpl1bnw==", + "dependencies": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.5", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-color-hex-alpha": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-5.0.3.tgz", + "integrity": "sha512-PF4GDel8q3kkreVXKLAGNpHKilXsZ6xuu+mOQMHWHLPNyjiUBOr75sp5ZKJfmv1MCus5/DWUGcK9hm6qHEnXYw==", + "dependencies": { + "postcss": "^7.0.14", + "postcss-values-parser": "^2.0.1" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-color-mod-function": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-color-mod-function/-/postcss-color-mod-function-3.0.3.tgz", + "integrity": "sha512-YP4VG+xufxaVtzV6ZmhEtc+/aTXH3d0JLpnYfxqTvwZPbJhWqp8bSY3nfNzNRFLgB4XSaBA82OE4VjOOKpCdVQ==", + "dependencies": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-color-rebeccapurple": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-4.0.1.tgz", + "integrity": "sha512-aAe3OhkS6qJXBbqzvZth2Au4V3KieR5sRQ4ptb2b2O8wgvB3SJBsdG+jsn2BZbbwekDG8nTfcCNKcSfe/lEy8g==", + "dependencies": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-colormin": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-4.0.3.tgz", + "integrity": "sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw==", + "dependencies": { + "browserslist": "^4.0.0", + "color": "^3.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-colormin/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + }, + "node_modules/postcss-convert-values": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz", + "integrity": "sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ==", + "dependencies": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-convert-values/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + }, + "node_modules/postcss-custom-media": { + "version": "7.0.8", + "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-7.0.8.tgz", + "integrity": "sha512-c9s5iX0Ge15o00HKbuRuTqNndsJUbaXdiNsksnVH8H4gdc+zbLzr/UasOwNG6CTDpLFekVY4672eWdiiWu2GUg==", + "dependencies": { + "postcss": "^7.0.14" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-custom-properties": { + "version": "8.0.11", + "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-8.0.11.tgz", + "integrity": "sha512-nm+o0eLdYqdnJ5abAJeXp4CEU1c1k+eB2yMCvhgzsds/e0umabFrN6HoTy/8Q4K5ilxERdl/JD1LO5ANoYBeMA==", + "dependencies": { + "postcss": "^7.0.17", + "postcss-values-parser": "^2.0.1" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-custom-selectors": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-5.1.2.tgz", + "integrity": "sha512-DSGDhqinCqXqlS4R7KGxL1OSycd1lydugJ1ky4iRXPHdBRiozyMHrdu0H3o7qNOCiZwySZTUI5MV0T8QhCLu+w==", + "dependencies": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-custom-selectors/node_modules/cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-custom-selectors/node_modules/postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "dependencies": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-dir-pseudo-class": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-5.0.0.tgz", + "integrity": "sha512-3pm4oq8HYWMZePJY+5ANriPs3P07q+LW6FAdTlkFH2XqDdP4HeeJYMOzn0HYLhRSjBO3fhiqSwwU9xEULSrPgw==", + "dependencies": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/postcss-dir-pseudo-class/node_modules/cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-dir-pseudo-class/node_modules/postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "dependencies": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-discard-comments": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz", + "integrity": "sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg==", + "dependencies": { + "postcss": "^7.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-discard-duplicates": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz", + "integrity": "sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ==", + "dependencies": { + "postcss": "^7.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-discard-empty": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz", + "integrity": "sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w==", + "dependencies": { + "postcss": "^7.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-discard-overridden": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz", + "integrity": "sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg==", + "dependencies": { + "postcss": "^7.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-double-position-gradients": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-1.0.0.tgz", + "integrity": "sha512-G+nV8EnQq25fOI8CH/B6krEohGWnF5+3A6H/+JEpOncu5dCnkS1QQ6+ct3Jkaepw1NGVqqOZH6lqrm244mCftA==", + "dependencies": { + "postcss": "^7.0.5", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-env-function": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-2.0.2.tgz", + "integrity": "sha512-rwac4BuZlITeUbiBq60h/xbLzXY43qOsIErngWa4l7Mt+RaSkT7QBjXVGTcBHupykkblHMDrBFh30zchYPaOUw==", + "dependencies": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-flexbugs-fixes": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-4.2.1.tgz", + "integrity": "sha512-9SiofaZ9CWpQWxOwRh1b/r85KD5y7GgvsNt1056k6OYLvWUun0czCvogfJgylC22uJTwW1KzY3Gz65NZRlvoiQ==", + "dependencies": { + "postcss": "^7.0.26" + } + }, + "node_modules/postcss-focus-visible": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-4.0.0.tgz", + "integrity": "sha512-Z5CkWBw0+idJHSV6+Bgf2peDOFf/x4o+vX/pwcNYrWpXFrSfTkQ3JQ1ojrq9yS+upnAlNRHeg8uEwFTgorjI8g==", + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-focus-within": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-3.0.0.tgz", + "integrity": "sha512-W0APui8jQeBKbCGZudW37EeMCjDeVxKgiYfIIEo8Bdh5SpB9sxds/Iq8SEuzS0Q4YFOlG7EPFulbbxujpkrV2w==", + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-font-variant": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-4.0.1.tgz", + "integrity": "sha512-I3ADQSTNtLTTd8uxZhtSOrTCQ9G4qUVKPjHiDk0bV75QSxXjVWiJVJ2VLdspGUi9fbW9BcjKJoRvxAH1pckqmA==", + "dependencies": { + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-gap-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-2.0.0.tgz", + "integrity": "sha512-QZSqDaMgXCHuHTEzMsS2KfVDOq7ZFiknSpkrPJY6jmxbugUPTuSzs/vuE5I3zv0WAS+3vhrlqhijiprnuQfzmg==", + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-image-set-function": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-3.0.1.tgz", + "integrity": "sha512-oPTcFFip5LZy8Y/whto91L9xdRHCWEMs3e1MdJxhgt4jy2WYXfhkng59fH5qLXSCPN8k4n94p1Czrfe5IOkKUw==", + "dependencies": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-initial": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-3.0.4.tgz", + "integrity": "sha512-3RLn6DIpMsK1l5UUy9jxQvoDeUN4gP939tDcKUHD/kM8SGSKbFAnvkpFpj3Bhtz3HGk1jWY5ZNWX6mPta5M9fg==", + "dependencies": { + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-lab-function": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-2.0.1.tgz", + "integrity": "sha512-whLy1IeZKY+3fYdqQFuDBf8Auw+qFuVnChWjmxm/UhHWqNHZx+B99EwxTvGYmUBqe3Fjxs4L1BoZTJmPu6usVg==", + "dependencies": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-load-config": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.1.2.tgz", + "integrity": "sha512-/rDeGV6vMUo3mwJZmeHfEDvwnTKKqQ0S7OHUi/kJvvtx3aWtyWG2/0ZWnzCt2keEclwN6Tf0DST2v9kITdOKYw==", + "dependencies": { + "cosmiconfig": "^5.0.0", + "import-cwd": "^2.0.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-load-config/node_modules/cosmiconfig": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", + "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "dependencies": { + "import-fresh": "^2.0.0", + "is-directory": "^0.3.1", + "js-yaml": "^3.13.1", + "parse-json": "^4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-load-config/node_modules/import-fresh": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", + "integrity": "sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==", + "dependencies": { + "caller-path": "^2.0.0", + "resolve-from": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-load-config/node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-load-config/node_modules/resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-loader": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-3.0.0.tgz", + "integrity": "sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==", + "dependencies": { + "loader-utils": "^1.1.0", + "postcss": "^7.0.0", + "postcss-load-config": "^2.0.0", + "schema-utils": "^1.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/postcss-loader/node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/postcss-loader/node_modules/loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/postcss-loader/node_modules/schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dependencies": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/postcss-logical": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-3.0.0.tgz", + "integrity": "sha512-1SUKdJc2vuMOmeItqGuNaC+N8MzBWFWEkAnRnLpFYj1tGGa7NqyVBujfRtgNa2gXR+6RkGUiB2O5Vmh7E2RmiA==", + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-media-minmax": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-4.0.0.tgz", + "integrity": "sha512-fo9moya6qyxsjbFAYl97qKO9gyre3qvbMnkOZeZwlsW6XYFsvs2DMGDlchVLfAd8LHPZDxivu/+qW2SMQeTHBw==", + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-media-query-parser": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz", + "integrity": "sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig==", + "dev": true + }, + "node_modules/postcss-merge-longhand": { + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz", + "integrity": "sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw==", + "dependencies": { + "css-color-names": "0.0.4", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "stylehacks": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-merge-longhand/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + }, + "node_modules/postcss-merge-rules": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz", + "integrity": "sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ==", + "dependencies": { + "browserslist": "^4.0.0", + "caniuse-api": "^3.0.0", + "cssnano-util-same-parent": "^4.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0", + "vendors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-merge-rules/node_modules/postcss-selector-parser": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", + "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", + "dependencies": { + "dot-prop": "^5.2.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/postcss-minify-font-values": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz", + "integrity": "sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg==", + "dependencies": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-minify-font-values/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + }, + "node_modules/postcss-minify-gradients": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz", + "integrity": "sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q==", + "dependencies": { + "cssnano-util-get-arguments": "^4.0.0", + "is-color-stop": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-minify-gradients/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + }, + "node_modules/postcss-minify-params": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz", + "integrity": "sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg==", + "dependencies": { + "alphanum-sort": "^1.0.0", + "browserslist": "^4.0.0", + "cssnano-util-get-arguments": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "uniqs": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-minify-params/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + }, + "node_modules/postcss-minify-selectors": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz", + "integrity": "sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g==", + "dependencies": { + "alphanum-sort": "^1.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-minify-selectors/node_modules/postcss-selector-parser": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", + "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", + "dependencies": { + "dot-prop": "^5.2.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/postcss-modules-extract-imports": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", + "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", + "dependencies": { + "postcss": "^7.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", + "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", + "dependencies": { + "icss-utils": "^4.1.1", + "postcss": "^7.0.32", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/postcss-modules-scope": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", + "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", + "dependencies": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^6.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/postcss-modules-values": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", + "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", + "dependencies": { + "icss-utils": "^4.0.0", + "postcss": "^7.0.6" + } + }, + "node_modules/postcss-nesting": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-7.0.1.tgz", + "integrity": "sha512-FrorPb0H3nuVq0Sff7W2rnc3SmIcruVC6YwpcS+k687VxyxO33iE1amna7wHuRVzM8vfiYofXSBHNAZ3QhLvYg==", + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-normalize": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize/-/postcss-normalize-8.0.1.tgz", + "integrity": "sha512-rt9JMS/m9FHIRroDDBGSMsyW1c0fkvOJPy62ggxSHUldJO7B195TqFMqIf+lY5ezpDcYOV4j86aUp3/XbxzCCQ==", + "dependencies": { + "@csstools/normalize.css": "^10.1.0", + "browserslist": "^4.6.2", + "postcss": "^7.0.17", + "postcss-browser-comments": "^3.0.0", + "sanitize.css": "^10.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/postcss-normalize-charset": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz", + "integrity": "sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g==", + "dependencies": { + "postcss": "^7.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-normalize-display-values": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz", + "integrity": "sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ==", + "dependencies": { + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-normalize-display-values/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + }, + "node_modules/postcss-normalize-positions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz", + "integrity": "sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA==", + "dependencies": { + "cssnano-util-get-arguments": "^4.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-normalize-positions/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + }, + "node_modules/postcss-normalize-repeat-style": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz", + "integrity": "sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q==", + "dependencies": { + "cssnano-util-get-arguments": "^4.0.0", + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-normalize-repeat-style/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + }, + "node_modules/postcss-normalize-string": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz", + "integrity": "sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA==", + "dependencies": { + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-normalize-string/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + }, + "node_modules/postcss-normalize-timing-functions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz", + "integrity": "sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A==", + "dependencies": { + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-normalize-timing-functions/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + }, + "node_modules/postcss-normalize-unicode": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz", + "integrity": "sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg==", + "dependencies": { + "browserslist": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-normalize-unicode/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + }, + "node_modules/postcss-normalize-url": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz", + "integrity": "sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA==", + "dependencies": { + "is-absolute-url": "^2.0.0", + "normalize-url": "^3.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-normalize-url/node_modules/normalize-url": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz", + "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-normalize-url/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + }, + "node_modules/postcss-normalize-whitespace": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz", + "integrity": "sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA==", + "dependencies": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-normalize-whitespace/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + }, + "node_modules/postcss-ordered-values": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz", + "integrity": "sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw==", + "dependencies": { + "cssnano-util-get-arguments": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-ordered-values/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + }, + "node_modules/postcss-overflow-shorthand": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-2.0.0.tgz", + "integrity": "sha512-aK0fHc9CBNx8jbzMYhshZcEv8LtYnBIRYQD5i7w/K/wS9c2+0NSR6B3OVMu5y0hBHYLcMGjfU+dmWYNKH0I85g==", + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-page-break": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-2.0.0.tgz", + "integrity": "sha512-tkpTSrLpfLfD9HvgOlJuigLuk39wVTbbd8RKcy8/ugV2bNBUW3xU+AIqyxhDrQr1VUj1RmyJrBn1YWrqUm9zAQ==", + "dependencies": { + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-place": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-4.0.1.tgz", + "integrity": "sha512-Zb6byCSLkgRKLODj/5mQugyuj9bvAAw9LqJJjgwz5cYryGeXfFZfSXoP1UfveccFmeq0b/2xxwcTEVScnqGxBg==", + "dependencies": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-preset-env": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-6.7.0.tgz", + "integrity": "sha512-eU4/K5xzSFwUFJ8hTdTQzo2RBLbDVt83QZrAvI07TULOkmyQlnYlpwep+2yIK+K+0KlZO4BvFcleOCCcUtwchg==", + "dependencies": { + "autoprefixer": "^9.6.1", + "browserslist": "^4.6.4", + "caniuse-lite": "^1.0.30000981", + "css-blank-pseudo": "^0.1.4", + "css-has-pseudo": "^0.10.0", + "css-prefers-color-scheme": "^3.1.1", + "cssdb": "^4.4.0", + "postcss": "^7.0.17", + "postcss-attribute-case-insensitive": "^4.0.1", + "postcss-color-functional-notation": "^2.0.1", + "postcss-color-gray": "^5.0.0", + "postcss-color-hex-alpha": "^5.0.3", + "postcss-color-mod-function": "^3.0.3", + "postcss-color-rebeccapurple": "^4.0.1", + "postcss-custom-media": "^7.0.8", + "postcss-custom-properties": "^8.0.11", + "postcss-custom-selectors": "^5.1.2", + "postcss-dir-pseudo-class": "^5.0.0", + "postcss-double-position-gradients": "^1.0.0", + "postcss-env-function": "^2.0.2", + "postcss-focus-visible": "^4.0.0", + "postcss-focus-within": "^3.0.0", + "postcss-font-variant": "^4.0.0", + "postcss-gap-properties": "^2.0.0", + "postcss-image-set-function": "^3.0.1", + "postcss-initial": "^3.0.0", + "postcss-lab-function": "^2.0.1", + "postcss-logical": "^3.0.0", + "postcss-media-minmax": "^4.0.0", + "postcss-nesting": "^7.0.0", + "postcss-overflow-shorthand": "^2.0.0", + "postcss-page-break": "^2.0.0", + "postcss-place": "^4.0.1", + "postcss-pseudo-class-any-link": "^6.0.0", + "postcss-replace-overflow-wrap": "^3.0.0", + "postcss-selector-matches": "^4.0.0", + "postcss-selector-not": "^4.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-pseudo-class-any-link": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-6.0.0.tgz", + "integrity": "sha512-lgXW9sYJdLqtmw23otOzrtbDXofUdfYzNm4PIpNE322/swES3VU9XlXHeJS46zT2onFO7V1QFdD4Q9LiZj8mew==", + "dependencies": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-pseudo-class-any-link/node_modules/cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-pseudo-class-any-link/node_modules/postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "dependencies": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-reduce-initial": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz", + "integrity": "sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA==", + "dependencies": { + "browserslist": "^4.0.0", + "caniuse-api": "^3.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-reduce-transforms": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz", + "integrity": "sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg==", + "dependencies": { + "cssnano-util-get-match": "^4.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-reduce-transforms/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + }, + "node_modules/postcss-replace-overflow-wrap": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-3.0.0.tgz", + "integrity": "sha512-2T5hcEHArDT6X9+9dVSPQdo7QHzG4XKclFT8rU5TzJPDN7RIRTbO9c4drUISOVemLj03aezStHCR2AIcr8XLpw==", + "dependencies": { + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-resolve-nested-selector": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz", + "integrity": "sha512-HvExULSwLqHLgUy1rl3ANIqCsvMS0WHss2UOsXhXnQaZ9VCc2oBvIpXrl00IUFT5ZDITME0o6oiXeiHr2SAIfw==", + "dev": true + }, + "node_modules/postcss-safe-parser": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-5.0.2.tgz", + "integrity": "sha512-jDUfCPJbKOABhwpUKcqCVbbXiloe/QXMcbJ6Iipf3sDIihEzTqRCeMBfRaOHxhBuTYqtASrI1KJWxzztZU4qUQ==", + "dependencies": { + "postcss": "^8.1.0" + }, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-safe-parser/node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "node_modules/postcss-safe-parser/node_modules/postcss": { + "version": "8.4.19", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.19.tgz", + "integrity": "sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + } + ], + "dependencies": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-selector-matches": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-matches/-/postcss-selector-matches-4.0.0.tgz", + "integrity": "sha512-LgsHwQR/EsRYSqlwdGzeaPKVT0Ml7LAT6E75T8W8xLJY62CE4S/l03BWIt3jT8Taq22kXP08s2SfTSzaraoPww==", + "dependencies": { + "balanced-match": "^1.0.0", + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-selector-not": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-4.0.1.tgz", + "integrity": "sha512-YolvBgInEK5/79C+bdFMyzqTg6pkYqDbzZIST/PDMqa/o3qtXenD05apBG2jLgT0/BQ77d4U2UK12jWpilqMAQ==", + "dependencies": { + "balanced-match": "^1.0.0", + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.10", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", + "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-svgo": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-4.0.3.tgz", + "integrity": "sha512-NoRbrcMWTtUghzuKSoIm6XV+sJdvZ7GZSc3wdBN0W19FTtp2ko8NqLsgoh/m9CzNhU3KLPvQmjIwtaNFkaFTvw==", + "dependencies": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "svgo": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-svgo/node_modules/postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + }, + "node_modules/postcss-unique-selectors": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz", + "integrity": "sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg==", + "dependencies": { + "alphanum-sort": "^1.0.0", + "postcss": "^7.0.0", + "uniqs": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + }, + "node_modules/postcss-values-parser": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", + "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", + "dependencies": { + "flatten": "^1.0.2", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=6.14.4" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha512-PhmXi5XmoyKw1Un4E+opM2KcsJInDvKyuOumcjjw3waw86ZNjHwVUOOWLc4bCzLdcKNaWBH9e99sbWzDQsVaYg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/prettier": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.7.1.tgz", + "integrity": "sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==", + "dev": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pretty-error": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.2.tgz", + "integrity": "sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==", + "dependencies": { + "lodash": "^4.17.20", + "renderkid": "^2.0.4" + } + }, + "node_modules/pretty-format": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.3.1.tgz", + "integrity": "sha512-FyLnmb1cYJV8biEIiRyzRFvs2lry7PPIvOqKVe1GCUEYg4YGmlx1qG9EJNMxArYm7piII4qb8UV1Pncq5dxmcg==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.0.0", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/promise": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/promise/-/promise-8.3.0.tgz", + "integrity": "sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg==", + "dependencies": { + "asap": "~2.0.6" + } + }, + "node_modules/promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==" + }, + "node_modules/prompts": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.0.tgz", + "integrity": "sha512-awZAKrk3vN6CroQukBL+R9051a4R3zCZBlJm/HBfrSZ8iTpYix3VX1vU4mveiLpiwmOJT4wokTF9m6HUk4KqWQ==", + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "node_modules/prop-types/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==" + }, + "node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" + }, + "node_modules/public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dependencies": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/public-encrypt/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/pumpify": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", + "dependencies": { + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" + } + }, + "node_modules/pumpify/node_modules/pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==", + "engines": { + "node": ">=0.6.0", + "teleport": ">=0.2.0" + } + }, + "node_modules/qrcode-generator": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/qrcode-generator/-/qrcode-generator-1.4.4.tgz", + "integrity": "sha512-HM7yY8O2ilqhmULxGMpcHSF1EhJJ9yBj8gvDEuZ6M+KGJ0YY2hKpnXvRD+hZPLrDVck3ExIGhmPtSdcjC+guuw==" + }, + "node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/query-string": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz", + "integrity": "sha512-O2XLNDBIg1DnTOa+2XrIwSiXEV8h2KImXUnjhhn2+UsvZ+Es2uyd5CCRTNQlDGbzUQOW3aYCBx9rVA6dzsiY7Q==", + "dependencies": { + "object-assign": "^4.1.0", + "strict-uri-encode": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==", + "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==", + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/quick-lru": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", + "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/raf": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", + "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", + "dependencies": { + "performance-now": "^2.1.0" + } + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dependencies": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/raw-body/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/react": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", + "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-app-polyfill": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/react-app-polyfill/-/react-app-polyfill-2.0.0.tgz", + "integrity": "sha512-0sF4ny9v/B7s6aoehwze9vJNWcmCemAUYBVasscVr92+UYiEqDXOxfKjXN685mDaMRNF3WdhHQs76oTODMocFA==", + "dependencies": { + "core-js": "^3.6.5", + "object-assign": "^4.1.1", + "promise": "^8.1.0", + "raf": "^3.4.1", + "regenerator-runtime": "^0.13.7", + "whatwg-fetch": "^3.4.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/react-dev-utils": { + "version": "11.0.4", + "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-11.0.4.tgz", + "integrity": "sha512-dx0LvIGHcOPtKbeiSUM4jqpBl3TcY7CDjZdfOIcKeznE7BWr9dg0iPG90G5yfVQ+p/rGNMXdbfStvzQZEVEi4A==", + "dependencies": { + "@babel/code-frame": "7.10.4", + "address": "1.1.2", + "browserslist": "4.14.2", + "chalk": "2.4.2", + "cross-spawn": "7.0.3", + "detect-port-alt": "1.1.6", + "escape-string-regexp": "2.0.0", + "filesize": "6.1.0", + "find-up": "4.1.0", + "fork-ts-checker-webpack-plugin": "4.1.6", + "global-modules": "2.0.0", + "globby": "11.0.1", + "gzip-size": "5.1.1", + "immer": "8.0.1", + "is-root": "2.1.0", + "loader-utils": "2.0.0", + "open": "^7.0.2", + "pkg-up": "3.1.0", + "prompts": "2.4.0", + "react-error-overlay": "^6.0.9", + "recursive-readdir": "2.2.2", + "shell-quote": "1.7.2", + "strip-ansi": "6.0.0", + "text-table": "0.2.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/react-dev-utils/node_modules/@babel/code-frame": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", + "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", + "dependencies": { + "@babel/highlight": "^7.10.4" + } + }, + "node_modules/react-dev-utils/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/react-dev-utils/node_modules/browserslist": { + "version": "4.14.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.14.2.tgz", + "integrity": "sha512-HI4lPveGKUR0x2StIz+2FXfDk9SfVMrxn6PLh1JeGUwcuoDkdKZebWiyLRJ68iIPDpMI4JLVDf7S7XzslgWOhw==", + "dependencies": { + "caniuse-lite": "^1.0.30001125", + "electron-to-chromium": "^1.3.564", + "escalade": "^3.0.2", + "node-releases": "^1.1.61" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + }, + "funding": { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + }, + "node_modules/react-dev-utils/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/react-dev-utils/node_modules/chalk/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/react-dev-utils/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/react-dev-utils/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/react-dev-utils/node_modules/globby": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.1.tgz", + "integrity": "sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ==", + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.1.1", + "ignore": "^5.1.4", + "merge2": "^1.3.0", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react-dev-utils/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/react-dev-utils/node_modules/loader-utils": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", + "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/react-dev-utils/node_modules/node-releases": { + "version": "1.1.77", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.77.tgz", + "integrity": "sha512-rB1DUFUNAN4Gn9keO2K1efO35IDK7yKHCdCaIMvFO7yUYmmZYeDjnGKle26G4rwj+LKRQpjyUUvMkPglwGCYNQ==" + }, + "node_modules/react-dev-utils/node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dependencies": { + "ansi-regex": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/react-dev-utils/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/react-dom": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", + "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "scheduler": "^0.20.2" + }, + "peerDependencies": { + "react": "17.0.2" + } + }, + "node_modules/react-error-overlay": { + "version": "6.0.9", + "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.9.tgz", + "integrity": "sha512-nQTTcUu+ATDbrSD1BZHr5kgSD4oF8OFjxun8uAaL8RwPBacGBNPf/yAuVVdx17N8XNzRDMrZ9XcKZHCjPW+9ew==" + }, + "node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/react-lifecycles-compat": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", + "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" + }, + "node_modules/react-modal": { + "version": "3.16.1", + "resolved": "https://registry.npmjs.org/react-modal/-/react-modal-3.16.1.tgz", + "integrity": "sha512-VStHgI3BVcGo7OXczvnJN7yT2TWHJPDXZWyI/a0ssFNhGZWsPmB8cF0z33ewDXq4VfYMO1vXgiv/g8Nj9NDyWg==", + "dependencies": { + "exenv": "^1.2.0", + "prop-types": "^15.7.2", + "react-lifecycles-compat": "^3.0.0", + "warning": "^4.0.3" + }, + "engines": { + "node": ">=8" + }, + "peerDependencies": { + "react": "^0.14.0 || ^15.0.0 || ^16 || ^17 || ^18", + "react-dom": "^0.14.0 || ^15.0.0 || ^16 || ^17 || ^18" + } + }, + "node_modules/react-qrcode-logo": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/react-qrcode-logo/-/react-qrcode-logo-2.8.0.tgz", + "integrity": "sha512-dbEgjsg6C4tK6+oGmCRDlJ7urQAWqybaGBLJtp8Z6ZYvVUP302HBXk/F7VRk54yWTwzlHwig3VK6HMKCha2YFw==", + "dependencies": { + "lodash.isequal": "^4.5.0", + "qrcode-generator": "^1.4.1" + }, + "peerDependencies": { + "react": ">=16.4.1", + "react-dom": ">=16.4.1" + } + }, + "node_modules/react-refresh": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.8.3.tgz", + "integrity": "sha512-X8jZHc7nCMjaCqoU+V2I0cOhNW+QMBwSUkeXnTi8IPe6zaRWfn60ZzvFDZqWPfmSJfjub7dDW1SP0jaHWLu/hg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-router": { + "version": "6.4.3", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.4.3.tgz", + "integrity": "sha512-BT6DoGn6aV1FVP5yfODMOiieakp3z46P1Fk0RNzJMACzE7C339sFuHebfvWtnB4pzBvXXkHP2vscJzWRuUjTtA==", + "dependencies": { + "@remix-run/router": "1.0.3" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/react-router-dom": { + "version": "6.4.3", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.4.3.tgz", + "integrity": "sha512-MiaYQU8CwVCaOfJdYvt84KQNjT78VF0TJrA17SIQgNHRvLnXDJO6qsFqq8F/zzB1BWZjCFIrQpu4QxcshitziQ==", + "dependencies": { + "@remix-run/router": "1.0.3", + "react-router": "6.4.3" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "react": ">=16.8", + "react-dom": ">=16.8" + } + }, + "node_modules/react-scripts": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/react-scripts/-/react-scripts-4.0.3.tgz", + "integrity": "sha512-S5eO4vjUzUisvkIPB7jVsKtuH2HhWcASREYWHAQ1FP5HyCv3xgn+wpILAEWkmy+A+tTNbSZClhxjT3qz6g4L1A==", + "dependencies": { + "@babel/core": "7.12.3", + "@pmmmwh/react-refresh-webpack-plugin": "0.4.3", + "@svgr/webpack": "5.5.0", + "@typescript-eslint/eslint-plugin": "^4.5.0", + "@typescript-eslint/parser": "^4.5.0", + "babel-eslint": "^10.1.0", + "babel-jest": "^26.6.0", + "babel-loader": "8.1.0", + "babel-plugin-named-asset-import": "^0.3.7", + "babel-preset-react-app": "^10.0.0", + "bfj": "^7.0.2", + "camelcase": "^6.1.0", + "case-sensitive-paths-webpack-plugin": "2.3.0", + "css-loader": "4.3.0", + "dotenv": "8.2.0", + "dotenv-expand": "5.1.0", + "eslint": "^7.11.0", + "eslint-config-react-app": "^6.0.0", + "eslint-plugin-flowtype": "^5.2.0", + "eslint-plugin-import": "^2.22.1", + "eslint-plugin-jest": "^24.1.0", + "eslint-plugin-jsx-a11y": "^6.3.1", + "eslint-plugin-react": "^7.21.5", + "eslint-plugin-react-hooks": "^4.2.0", + "eslint-plugin-testing-library": "^3.9.2", + "eslint-webpack-plugin": "^2.5.2", + "file-loader": "6.1.1", + "fs-extra": "^9.0.1", + "html-webpack-plugin": "4.5.0", + "identity-obj-proxy": "3.0.0", + "jest": "26.6.0", + "jest-circus": "26.6.0", + "jest-resolve": "26.6.0", + "jest-watch-typeahead": "0.6.1", + "mini-css-extract-plugin": "0.11.3", + "optimize-css-assets-webpack-plugin": "5.0.4", + "pnp-webpack-plugin": "1.6.4", + "postcss-flexbugs-fixes": "4.2.1", + "postcss-loader": "3.0.0", + "postcss-normalize": "8.0.1", + "postcss-preset-env": "6.7.0", + "postcss-safe-parser": "5.0.2", + "prompts": "2.4.0", + "react-app-polyfill": "^2.0.0", + "react-dev-utils": "^11.0.3", + "react-refresh": "^0.8.3", + "resolve": "1.18.1", + "resolve-url-loader": "^3.1.2", + "sass-loader": "^10.0.5", + "semver": "7.3.2", + "style-loader": "1.3.0", + "terser-webpack-plugin": "4.2.3", + "ts-pnp": "1.2.0", + "url-loader": "4.1.1", + "webpack": "4.44.2", + "webpack-dev-server": "3.11.1", + "webpack-manifest-plugin": "2.2.0", + "workbox-webpack-plugin": "5.1.4" + }, + "bin": { + "react-scripts": "bin/react-scripts.js" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.1.3" + }, + "peerDependencies": { + "react": ">= 16", + "typescript": "^3.2.1 || ^4" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/react-scripts/node_modules/@babel/core": { + "version": "7.12.3", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.3.tgz", + "integrity": "sha512-0qXcZYKZp3/6N2jKYVxZv0aNCsxTSVCiK72DTiTYZAu7sjg73W0/aynWjMbiGd87EQL4WyA8reiJVh92AVla9g==", + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.12.1", + "@babel/helper-module-transforms": "^7.12.1", + "@babel/helpers": "^7.12.1", + "@babel/parser": "^7.12.3", + "@babel/template": "^7.10.4", + "@babel/traverse": "^7.12.1", + "@babel/types": "^7.12.1", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/react-scripts/node_modules/@babel/core/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/react-scripts/node_modules/@pmmmwh/react-refresh-webpack-plugin": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.4.3.tgz", + "integrity": "sha512-br5Qwvh8D2OQqSXpd1g/xqXKnK0r+Jz6qVKBbWmpUcrbGOxUrf39V5oZ1876084CGn18uMdR5uvPqBv9UqtBjQ==", + "dependencies": { + "ansi-html": "^0.0.7", + "error-stack-parser": "^2.0.6", + "html-entities": "^1.2.1", + "native-url": "^0.2.6", + "schema-utils": "^2.6.5", + "source-map": "^0.7.3" + }, + "engines": { + "node": ">= 10.x" + }, + "peerDependencies": { + "@types/webpack": "4.x", + "react-refresh": ">=0.8.3 <0.10.0", + "sockjs-client": "^1.4.0", + "type-fest": "^0.13.1", + "webpack": ">=4.43.0 <6.0.0", + "webpack-dev-server": "3.x", + "webpack-hot-middleware": "2.x", + "webpack-plugin-serve": "0.x || 1.x" + }, + "peerDependenciesMeta": { + "@types/webpack": { + "optional": true + }, + "sockjs-client": { + "optional": true + }, + "type-fest": { + "optional": true + }, + "webpack-dev-server": { + "optional": true + }, + "webpack-hot-middleware": { + "optional": true + }, + "webpack-plugin-serve": { + "optional": true + } + } + }, + "node_modules/react-scripts/node_modules/@pmmmwh/react-refresh-webpack-plugin/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/react-scripts/node_modules/@typescript-eslint/eslint-plugin": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.33.0.tgz", + "integrity": "sha512-aINiAxGVdOl1eJyVjaWn/YcVAq4Gi/Yo35qHGCnqbWVz61g39D0h23veY/MA0rFFGfxK7TySg2uwDeNv+JgVpg==", + "dependencies": { + "@typescript-eslint/experimental-utils": "4.33.0", + "@typescript-eslint/scope-manager": "4.33.0", + "debug": "^4.3.1", + "functional-red-black-tree": "^1.0.1", + "ignore": "^5.1.8", + "regexpp": "^3.1.0", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^4.0.0", + "eslint": "^5.0.0 || ^6.0.0 || ^7.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/react-scripts/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/react-scripts/node_modules/@typescript-eslint/parser": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.33.0.tgz", + "integrity": "sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA==", + "dependencies": { + "@typescript-eslint/scope-manager": "4.33.0", + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/typescript-estree": "4.33.0", + "debug": "^4.3.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^5.0.0 || ^6.0.0 || ^7.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/react-scripts/node_modules/@typescript-eslint/scope-manager": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.33.0.tgz", + "integrity": "sha512-5IfJHpgTsTZuONKbODctL4kKuQje/bzBRkwHE8UOZ4f89Zeddg+EGZs8PD8NcN4LdM3ygHWYB3ukPAYjvl/qbQ==", + "dependencies": { + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/visitor-keys": "4.33.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/react-scripts/node_modules/@typescript-eslint/types": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.33.0.tgz", + "integrity": "sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ==", + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/react-scripts/node_modules/@typescript-eslint/typescript-estree": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.33.0.tgz", + "integrity": "sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA==", + "dependencies": { + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/visitor-keys": "4.33.0", + "debug": "^4.3.1", + "globby": "^11.0.3", + "is-glob": "^4.0.1", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/react-scripts/node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/react-scripts/node_modules/@typescript-eslint/visitor-keys": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.33.0.tgz", + "integrity": "sha512-uqi/2aSz9g2ftcHWf8uLPJA70rUv6yuMW5Bohw+bwcuzaxQIHaKFZCKGoGXIrc9vkTJ3+0txM73K0Hq3d5wgIg==", + "dependencies": { + "@typescript-eslint/types": "4.33.0", + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/react-scripts/node_modules/eslint-config-react-app": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-react-app/-/eslint-config-react-app-6.0.0.tgz", + "integrity": "sha512-bpoAAC+YRfzq0dsTk+6v9aHm/uqnDwayNAXleMypGl6CpxI9oXXscVHo4fk3eJPIn+rsbtNetB4r/ZIidFIE8A==", + "dependencies": { + "confusing-browser-globals": "^1.0.10" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "peerDependencies": { + "@typescript-eslint/eslint-plugin": "^4.0.0", + "@typescript-eslint/parser": "^4.0.0", + "babel-eslint": "^10.0.0", + "eslint": "^7.5.0", + "eslint-plugin-flowtype": "^5.2.0", + "eslint-plugin-import": "^2.22.0", + "eslint-plugin-jest": "^24.0.0", + "eslint-plugin-jsx-a11y": "^6.3.1", + "eslint-plugin-react": "^7.20.3", + "eslint-plugin-react-hooks": "^4.0.8", + "eslint-plugin-testing-library": "^3.9.0" + }, + "peerDependenciesMeta": { + "eslint-plugin-jest": { + "optional": true + }, + "eslint-plugin-testing-library": { + "optional": true + } + } + }, + "node_modules/react-scripts/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "engines": { + "node": ">=10" + } + }, + "node_modules/react-scripts/node_modules/resolve": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.18.1.tgz", + "integrity": "sha512-lDfCPaMKfOJXjy0dPayzPdF1phampNWr3qFCjAu+rw/qbQmr5jWH5xN2hwh9QKfw9E5v4hwV7A+jrCmL8yjjqA==", + "dependencies": { + "is-core-module": "^2.0.0", + "path-parse": "^1.0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/react-scripts/node_modules/semver": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", + "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/react-scripts/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-scripts/node_modules/type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "optional": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react-textarea-autosize": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.3.2.tgz", + "integrity": "sha512-JrMWVgQSaExQByP3ggI1eA8zF4mF0+ddVuX7acUeK2V7bmrpjVOY72vmLz2IXFJSAXoY3D80nEzrn0GWajWK3Q==", + "dependencies": { + "@babel/runtime": "^7.10.2", + "use-composed-ref": "^1.0.0", + "use-latest": "^1.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0" + } + }, + "node_modules/react-tooltip": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/react-tooltip/-/react-tooltip-4.5.0.tgz", + "integrity": "sha512-mJNurq29atce+TJc9Xe+/FHrcEs3K9J7wkjZZXwbK5Yq6uG5SZeKSFHwd0wcRPUipVwx5crmgzSW8Zu1xyvLTQ==", + "dependencies": { + "prop-types": "^15.8.1", + "uuid": "^7.0.3" + }, + "engines": { + "npm": ">=6.13" + }, + "peerDependencies": { + "react": ">=16.0.0", + "react-dom": ">=16.0.0" + } + }, + "node_modules/react-tooltip/node_modules/uuid": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-7.0.3.tgz", + "integrity": "sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dependencies": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "devOptional": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/realistic-structured-clone": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/realistic-structured-clone/-/realistic-structured-clone-3.0.0.tgz", + "integrity": "sha512-rOjh4nuWkAqf9PWu6JVpOWD4ndI+JHfgiZeMmujYcPi+fvILUu7g6l26TC1K5aBIp34nV+jE1cDO75EKOfHC5Q==", + "dev": true, + "dependencies": { + "domexception": "^1.0.1", + "typeson": "^6.1.0", + "typeson-registry": "^1.0.0-alpha.20" + } + }, + "node_modules/realistic-structured-clone/node_modules/domexception": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz", + "integrity": "sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==", + "dev": true, + "dependencies": { + "webidl-conversions": "^4.0.2" + } + }, + "node_modules/realistic-structured-clone/node_modules/webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", + "dev": true + }, + "node_modules/recursive-readdir": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz", + "integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==", + "dependencies": { + "minimatch": "3.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/recursive-readdir/node_modules/minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "dev": true, + "dependencies": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==" + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", + "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + }, + "node_modules/regenerator-transform": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz", + "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dependencies": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regex-parser": { + "version": "2.2.11", + "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz", + "integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==" + }, + "node_modules/regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/regexpu-core": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.2.2.tgz", + "integrity": "sha512-T0+1Zp2wjF/juXMrMxHxidqGYn8U4R+zleSJhX9tQ1PUsS8a9UtYfbsF9LdiVgNX3kiX8RNaKM42nfSgvFJjmw==", + "dependencies": { + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsgen": "^0.7.1", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsgen": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.7.1.tgz", + "integrity": "sha512-RAt+8H2ZEzHeYWxZ3H2z6tF18zyyOnlcdaafLrm21Bguj7uZy6ULibiAFdXEtKQY4Sy7wDTwDiOazasMLc4KPA==" + }, + "node_modules/regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==" + }, + "node_modules/renderkid": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.7.tgz", + "integrity": "sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ==", + "dependencies": { + "css-select": "^4.1.3", + "dom-converter": "^0.2.0", + "htmlparser2": "^6.1.0", + "lodash": "^4.17.21", + "strip-ansi": "^3.0.1" + } + }, + "node_modules/renderkid/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/renderkid/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/repeat-element": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz", + "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" + }, + "node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-cwd/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==", + "deprecated": "https://github.com/lydell/resolve-url#deprecated" + }, + "node_modules/resolve-url-loader": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-3.1.4.tgz", + "integrity": "sha512-D3sQ04o0eeQEySLrcz4DsX3saHfsr8/N6tfhblxgZKXxMT2Louargg12oGNfoTRLV09GXhVUe5/qgA5vdgNigg==", + "dependencies": { + "adjust-sourcemap-loader": "3.0.0", + "camelcase": "5.3.1", + "compose-function": "3.0.3", + "convert-source-map": "1.7.0", + "es6-iterator": "2.0.3", + "loader-utils": "1.2.3", + "postcss": "7.0.36", + "rework": "1.0.1", + "rework-visit": "1.0.0", + "source-map": "0.6.1" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/resolve-url-loader/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-url-loader/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/resolve-url-loader/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-url-loader/node_modules/chalk/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-url-loader/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/resolve-url-loader/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/resolve-url-loader/node_modules/convert-source-map": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "dependencies": { + "safe-buffer": "~5.1.1" + } + }, + "node_modules/resolve-url-loader/node_modules/emojis-list": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", + "integrity": "sha512-knHEZMgs8BB+MInokmNTg/OyPlAddghe1YBgNwJBc5zsJi/uyIcXoSDsL/W9ymOsBoBGdPIHXYJ9+qKFwRwDng==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/resolve-url-loader/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/resolve-url-loader/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-url-loader/node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/resolve-url-loader/node_modules/loader-utils": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", + "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^2.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/resolve-url-loader/node_modules/postcss": { + "version": "7.0.36", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", + "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/resolve-url-loader/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/resolve-url-loader/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/restore-cursor/node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/restore-cursor/node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "engines": { + "node": ">=0.12" + } + }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rework": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/rework/-/rework-1.0.1.tgz", + "integrity": "sha512-eEjL8FdkdsxApd0yWVZgBGzfCQiT8yqSc2H1p4jpZpQdtz7ohETiDMoje5PlM8I9WgkqkreVxFUKYOiJdVWDXw==", + "dependencies": { + "convert-source-map": "^0.3.3", + "css": "^2.0.0" + } + }, + "node_modules/rework-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/rework-visit/-/rework-visit-1.0.0.tgz", + "integrity": "sha512-W6V2fix7nCLUYX1v6eGPrBOZlc03/faqzP4sUxMAJMBMOPYhfV/RyLegTufn5gJKaOITyi+gvf0LXDZ9NzkHnQ==" + }, + "node_modules/rework/node_modules/convert-source-map": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-0.3.5.tgz", + "integrity": "sha512-+4nRk0k3oEpwUB7/CalD7xE2z4VmtEnnq0GO2IPTkrooTrAhEsWvuLF5iWP1dXrwluki/azwXV1ve7gtYuPldg==" + }, + "node_modules/rfdc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", + "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", + "dev": true + }, + "node_modules/rgb-regex": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/rgb-regex/-/rgb-regex-1.0.1.tgz", + "integrity": "sha512-gDK5mkALDFER2YLqH6imYvK6g02gpNGM4ILDZ472EwWfXZnC2ZEpoB2ECXTyOVUKuk/bPJZMzwQPBYICzP+D3w==" + }, + "node_modules/rgba-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/rgba-regex/-/rgba-regex-1.0.0.tgz", + "integrity": "sha512-zgn5OjNQXLUTdq8m17KdaicF6w89TZs8ZU8y0AYENIU6wG8GG6LLm0yLSiPY8DmaYmHdgRW8rnApjoT0fQRfMg==" + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "node_modules/rollup": { + "version": "1.32.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-1.32.1.tgz", + "integrity": "sha512-/2HA0Ec70TvQnXdzynFffkjA6XN+1e2pEv/uKS5Ulca40g2L7KuOE3riasHoNVHOsFD5KKZgDsMk1CP3Tw9s+A==", + "dependencies": { + "@types/estree": "*", + "@types/node": "*", + "acorn": "^7.1.0" + }, + "bin": { + "rollup": "dist/bin/rollup" + } + }, + "node_modules/rollup-plugin-babel": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/rollup-plugin-babel/-/rollup-plugin-babel-4.4.0.tgz", + "integrity": "sha512-Lek/TYp1+7g7I+uMfJnnSJ7YWoD58ajo6Oarhlex7lvUce+RCKRuGRSgztDO3/MF/PuGKmUL5iTHKf208UNszw==", + "deprecated": "This package has been deprecated and is no longer maintained. Please use @rollup/plugin-babel.", + "dependencies": { + "@babel/helper-module-imports": "^7.0.0", + "rollup-pluginutils": "^2.8.1" + }, + "peerDependencies": { + "@babel/core": "7 || ^7.0.0-rc.2", + "rollup": ">=0.60.0 <3" + } + }, + "node_modules/rollup-plugin-terser": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/rollup-plugin-terser/-/rollup-plugin-terser-5.3.1.tgz", + "integrity": "sha512-1pkwkervMJQGFYvM9nscrUoncPwiKR/K+bHdjv6PFgRo3cgPHoRT83y2Aa3GvINj4539S15t/tpFPb775TDs6w==", + "dependencies": { + "@babel/code-frame": "^7.5.5", + "jest-worker": "^24.9.0", + "rollup-pluginutils": "^2.8.2", + "serialize-javascript": "^4.0.0", + "terser": "^4.6.2" + }, + "peerDependencies": { + "rollup": ">=0.66.0 <3" + } + }, + "node_modules/rollup-plugin-terser/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/rollup-plugin-terser/node_modules/jest-worker": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-24.9.0.tgz", + "integrity": "sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw==", + "dependencies": { + "merge-stream": "^2.0.0", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/rollup-plugin-terser/node_modules/serialize-javascript": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", + "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/rollup-plugin-terser/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/rollup-pluginutils": { + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz", + "integrity": "sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==", + "dependencies": { + "estree-walker": "^0.6.1" + } + }, + "node_modules/rollup-pluginutils/node_modules/estree-walker": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.1.tgz", + "integrity": "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==" + }, + "node_modules/rsvp": { + "version": "4.8.5", + "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", + "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", + "engines": { + "node": "6.* || >= 7.*" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/run-queue": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", + "integrity": "sha512-ntymy489o0/QQplUDnpYAYUsO50K9SBrIVaKCWDOJzYJts0f9WH9RFJkyagebkw5+y1oi00R7ynNW/d12GBumg==", + "dependencies": { + "aproba": "^1.1.1" + } + }, + "node_modules/rxjs": { + "version": "7.5.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.7.tgz", + "integrity": "sha512-z9MzKh/UcOqB3i20H6rtrlaE/CgjLOvheWK/9ILrbhROGTweAi1BaFsTT9FbwZi5Trr1qNRs+MXkhmR06awzQA==", + "dev": true, + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==", + "dependencies": { + "ret": "~0.1.10" + } + }, + "node_modules/safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/sane": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz", + "integrity": "sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA==", + "deprecated": "some dependency vulnerabilities fixed, support for node < 10 dropped, and newer ECMAScript syntax/features added", + "dependencies": { + "@cnakazawa/watch": "^1.0.3", + "anymatch": "^2.0.0", + "capture-exit": "^2.0.0", + "exec-sh": "^0.3.2", + "execa": "^1.0.0", + "fb-watchman": "^2.0.0", + "micromatch": "^3.1.4", + "minimist": "^1.1.1", + "walker": "~1.0.5" + }, + "bin": { + "sane": "src/cli.js" + }, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/sane/node_modules/anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dependencies": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + } + }, + "node_modules/sane/node_modules/braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dependencies": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sane/node_modules/braces/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sane/node_modules/cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/sane/node_modules/execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dependencies": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/sane/node_modules/fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", + "dependencies": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sane/node_modules/fill-range/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sane/node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/sane/node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sane/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sane/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sane/node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sane/node_modules/micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sane/node_modules/normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", + "dependencies": { + "remove-trailing-separator": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sane/node_modules/npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", + "dependencies": { + "path-key": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/sane/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/sane/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/sane/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sane/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sane/node_modules/to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sane/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/sanitize.css": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/sanitize.css/-/sanitize.css-10.0.0.tgz", + "integrity": "sha512-vTxrZz4dX5W86M6oVWVdOVe72ZiPs41Oi7Z6Km4W5Turyz28mrXSJhhEBZoRtzJWIv3833WKVwLSDWWkEfupMg==" + }, + "node_modules/sass": { + "version": "1.56.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.56.1.tgz", + "integrity": "sha512-VpEyKpyBPCxE7qGDtOcdJ6fFbcpOM+Emu7uZLxVrkX8KVU/Dp5UF7WLvzqRuUhB6mqqQt1xffLoG+AndxTZrCQ==", + "devOptional": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/sass-loader": { + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-10.4.1.tgz", + "integrity": "sha512-aX/iJZTTpNUNx/OSYzo2KsjIUQHqvWsAhhUijFjAPdZTEhstjZI9zTNvkTTwsx+uNUJqUwOw5gacxQMx4hJxGQ==", + "dependencies": { + "klona": "^2.0.4", + "loader-utils": "^2.0.0", + "neo-async": "^2.6.2", + "schema-utils": "^3.0.0", + "semver": "^7.3.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "fibers": ">= 3.1.0", + "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0", + "sass": "^1.3.0", + "webpack": "^4.36.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true + }, + "node-sass": { + "optional": true + }, + "sass": { + "optional": true + } + } + }, + "node_modules/sass-loader/node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "node_modules/saxes": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", + "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/scheduler": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", + "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + }, + "node_modules/schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dependencies": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/scrypt-async": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/scrypt-async/-/scrypt-async-2.0.1.tgz", + "integrity": "sha512-wHR032jldwZNy7Tzrfu7RccOgGf8r5hyDMSP2uV6DpLiBUsR8JsDcx/in73o2UGVVrH5ivRFdNsFPcjtl3LErQ==" + }, + "node_modules/select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==" + }, + "node_modules/selfsigned": { + "version": "1.10.14", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.14.tgz", + "integrity": "sha512-lkjaiAye+wBZDCBsu5BGi0XiLRxeUlsGod5ZP924CRSEoGuZAw/f7y9RKu28rwTfiHVhdavhB0qH0INV6P1lEA==", + "dependencies": { + "node-forge": "^0.10.0" + } + }, + "node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/serialize-javascript": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", + "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", + "dependencies": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/serve-index/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==" + }, + "node_modules/serve-index/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/serve-index/node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" + }, + "node_modules/serve-index/node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" + }, + "node_modules/set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "dependencies": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/set-value/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/set-value/node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/set-value/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==" + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "node_modules/sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + }, + "bin": { + "sha.js": "bin.js" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz", + "integrity": "sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==" + }, + "node_modules/shellwords": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", + "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", + "optional": true + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "node_modules/simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "dependencies": { + "is-arrayish": "^0.3.1" + } + }, + "node_modules/simple-swizzle/node_modules/is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/slice-ansi": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", + "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.0.0", + "is-fullwidth-code-point": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/slice-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dependencies": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dependencies": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node/node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dependencies": { + "kind-of": "^3.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/snapdragon/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/snapdragon/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sockjs": { + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", + "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", + "dependencies": { + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" + } + }, + "node_modules/sockjs-client": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.6.1.tgz", + "integrity": "sha512-2g0tjOR+fRs0amxENLi/q5TiJTqY+WXFOzb5UwXndlK6TO3U/mirZznpx6w34HVMoc3g7cY24yC/ZMIYnDlfkw==", + "dependencies": { + "debug": "^3.2.7", + "eventsource": "^2.0.2", + "faye-websocket": "^0.11.4", + "inherits": "^2.0.4", + "url-parse": "^1.5.10" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://tidelift.com/funding/github/npm/sockjs-client" + } + }, + "node_modules/sockjs-client/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/sort-keys": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", + "integrity": "sha512-vzn8aSqKgytVik0iwdBEi+zevbTYZogewTUM6dtpmGwEcdzbub/TX4bCzRhebDCRC3QzXgJsLRKB2V/Oof7HXg==", + "dependencies": { + "is-plain-obj": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-list-map": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==" + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-resolve": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", + "dependencies": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-url": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", + "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", + "deprecated": "See https://github.com/lydell/source-map-url#deprecated" + }, + "node_modules/sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==" + }, + "node_modules/spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", + "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==" + }, + "node_modules/spdy": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", + "dependencies": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "dependencies": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "node_modules/split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dependencies": { + "extend-shallow": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/split2": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/split2/-/split2-0.2.1.tgz", + "integrity": "sha512-D/oTExYAkC9nWleOCTOyNmAuzfAT/6rHGBA9LIK7FVnGo13CSvrKCUzKenwH6U1s2znY9MqH6v0UQTEDa3vJmg==", + "dev": true, + "dependencies": { + "through2": "~0.6.1" + } + }, + "node_modules/split2/node_modules/readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/split2/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true + }, + "node_modules/split2/node_modules/through2": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", + "integrity": "sha512-RkK/CCESdTKQZHdmKICijdKKsCRVHs5KsLZ6pACAmF/1GPUQhonHSXWNERctxEp7RmvjdNbZTL5z9V7nSCXKcg==", + "dev": true, + "dependencies": { + "readable-stream": ">=1.0.33-1 <1.1.0-0", + "xtend": ">=4.0.0 <4.1.0-0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" + }, + "node_modules/ssri": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", + "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", + "deprecated": "Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility" + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stackframe": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz", + "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==" + }, + "node_modules/static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==", + "dependencies": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/stream-browserify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", + "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", + "dev": true, + "dependencies": { + "inherits": "~2.0.4", + "readable-stream": "^3.5.0" + } + }, + "node_modules/stream-each": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", + "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", + "dependencies": { + "end-of-stream": "^1.1.0", + "stream-shift": "^1.0.0" + } + }, + "node_modules/stream-http": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "dependencies": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" + } + }, + "node_modules/stream-http/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/stream-http/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/stream-http/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/stream-http/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/stream-shift": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", + "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==" + }, + "node_modules/strict-uri-encode": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", + "integrity": "sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-argv": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", + "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", + "dev": true, + "engines": { + "node": ">=0.6.19" + } + }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-natural-compare": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/string-natural-compare/-/string-natural-compare-3.0.1.tgz", + "integrity": "sha512-n3sPwynL1nwKi3WJ6AIsClwBMa0zTi54fn2oLU6ndfTSIO05xaznjSf15PcBZU6FNWbmN5Q6cxT4V5hGvB4taw==" + }, + "node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz", + "integrity": "sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "regexp.prototype.flags": "^1.4.3", + "side-channel": "^1.0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", + "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", + "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/stringify-object": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", + "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", + "dependencies": { + "get-own-enumerable-property-symbols": "^3.0.0", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-comments": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/strip-comments/-/strip-comments-1.0.2.tgz", + "integrity": "sha512-kL97alc47hoyIQSV165tTt9rG5dn4w1dNnBhOQ3bOU1Nc1hel09jnXANaHJ7vzHLd4Ju8kseDGzlev96pghLFw==", + "dependencies": { + "babel-extract-comments": "^1.0.0", + "babel-plugin-transform-object-rest-spread": "^6.26.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/style-loader": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.3.0.tgz", + "integrity": "sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q==", + "dependencies": { + "loader-utils": "^2.0.0", + "schema-utils": "^2.7.0" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/style-search": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz", + "integrity": "sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==", + "dev": true + }, + "node_modules/stylehacks": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-4.0.3.tgz", + "integrity": "sha512-7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g==", + "dependencies": { + "browserslist": "^4.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/stylehacks/node_modules/postcss-selector-parser": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", + "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", + "dependencies": { + "dot-prop": "^5.2.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/stylelint": { + "version": "14.15.0", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-14.15.0.tgz", + "integrity": "sha512-JOgDAo5QRsqiOZPZO+B9rKJvBm64S0xasbuRPAbPs6/vQDgDCnZLIiw6XcAS6GQKk9k1sBWR6rmH3Mfj8OknKg==", + "dev": true, + "dependencies": { + "@csstools/selector-specificity": "^2.0.2", + "balanced-match": "^2.0.0", + "colord": "^2.9.3", + "cosmiconfig": "^7.1.0", + "css-functions-list": "^3.1.0", + "debug": "^4.3.4", + "fast-glob": "^3.2.12", + "fastest-levenshtein": "^1.0.16", + "file-entry-cache": "^6.0.1", + "global-modules": "^2.0.0", + "globby": "^11.1.0", + "globjoin": "^0.1.4", + "html-tags": "^3.2.0", + "ignore": "^5.2.0", + "import-lazy": "^4.0.0", + "imurmurhash": "^0.1.4", + "is-plain-object": "^5.0.0", + "known-css-properties": "^0.26.0", + "mathml-tag-names": "^2.1.3", + "meow": "^9.0.0", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.4.19", + "postcss-media-query-parser": "^0.2.3", + "postcss-resolve-nested-selector": "^0.1.1", + "postcss-safe-parser": "^6.0.0", + "postcss-selector-parser": "^6.0.10", + "postcss-value-parser": "^4.2.0", + "resolve-from": "^5.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "style-search": "^0.1.0", + "supports-hyperlinks": "^2.3.0", + "svg-tags": "^1.0.0", + "table": "^6.8.1", + "v8-compile-cache": "^2.3.0", + "write-file-atomic": "^4.0.2" + }, + "bin": { + "stylelint": "bin/stylelint.js" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stylelint" + } + }, + "node_modules/stylelint-config-recommended": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-6.0.0.tgz", + "integrity": "sha512-ZorSSdyMcxWpROYUvLEMm0vSZud2uB7tX1hzBZwvVY9SV/uly4AvvJPPhCcymZL3fcQhEQG5AELmrxWqtmzacw==", + "dev": true, + "peerDependencies": { + "stylelint": "^14.0.0" + } + }, + "node_modules/stylelint-config-recommended-scss": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-5.0.2.tgz", + "integrity": "sha512-b14BSZjcwW0hqbzm9b0S/ScN2+3CO3O4vcMNOw2KGf8lfVSwJ4p5TbNEXKwKl1+0FMtgRXZj6DqVUe/7nGnuBg==", + "dev": true, + "dependencies": { + "postcss-scss": "^4.0.2", + "stylelint-config-recommended": "^6.0.0", + "stylelint-scss": "^4.0.0" + }, + "peerDependencies": { + "stylelint": "^14.0.0" + } + }, + "node_modules/stylelint-config-recommended-scss/node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true, + "peer": true + }, + "node_modules/stylelint-config-recommended-scss/node_modules/postcss": { + "version": "8.4.19", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.19.tgz", + "integrity": "sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + } + ], + "peer": true, + "dependencies": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/stylelint-config-recommended-scss/node_modules/postcss-scss": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.5.tgz", + "integrity": "sha512-F7xpB6TrXyqUh3GKdyB4Gkp3QL3DDW1+uI+gxx/oJnUt/qXI4trj5OGlp9rOKdoABGULuqtqeG+3HEVQk4DjmA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss-scss" + } + ], + "engines": { + "node": ">=12.0" + }, + "peerDependencies": { + "postcss": "^8.3.3" + } + }, + "node_modules/stylelint-config-standard": { + "version": "24.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-24.0.0.tgz", + "integrity": "sha512-+RtU7fbNT+VlNbdXJvnjc3USNPZRiRVp/d2DxOF/vBDDTi0kH5RX2Ny6errdtZJH3boO+bmqIYEllEmok4jiuw==", + "dev": true, + "dependencies": { + "stylelint-config-recommended": "^6.0.0" + }, + "peerDependencies": { + "stylelint": "^14.0.0" + } + }, + "node_modules/stylelint-config-standard-scss": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-standard-scss/-/stylelint-config-standard-scss-3.0.0.tgz", + "integrity": "sha512-zt3ZbzIbllN1iCmc94e4pDxqpkzeR6CJo5DDXzltshuXr+82B8ylHyMMARNnUYrZH80B7wgY7UkKTYCFM0UUyw==", + "dev": true, + "dependencies": { + "stylelint-config-recommended-scss": "^5.0.2", + "stylelint-config-standard": "^24.0.0" + }, + "peerDependencies": { + "stylelint": "^14.0.0" + } + }, + "node_modules/stylelint-no-unsupported-browser-features": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/stylelint-no-unsupported-browser-features/-/stylelint-no-unsupported-browser-features-6.0.1.tgz", + "integrity": "sha512-cuhp3gU+SMp0I5dCykjQ0iSTtBsWeA7qNZlNBYnCW7L4KPudunRYyGQ8gcClRJtFpGkElQUtsfLMALNFZVdEFw==", + "dev": true, + "dependencies": { + "doiuse": "^4.4.1", + "lodash": "^4.17.15", + "postcss": "^8.4.16" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "stylelint": "^14.0.0" + } + }, + "node_modules/stylelint-no-unsupported-browser-features/node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/stylelint-no-unsupported-browser-features/node_modules/postcss": { + "version": "8.4.19", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.19.tgz", + "integrity": "sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + } + ], + "dependencies": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/stylelint-order": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/stylelint-order/-/stylelint-order-5.0.0.tgz", + "integrity": "sha512-OWQ7pmicXufDw5BlRqzdz3fkGKJPgLyDwD1rFY3AIEfIH/LQY38Vu/85v8/up0I+VPiuGRwbc2Hg3zLAsJaiyw==", + "dev": true, + "dependencies": { + "postcss": "^8.3.11", + "postcss-sorting": "^7.0.1" + }, + "peerDependencies": { + "stylelint": "^14.0.0" + } + }, + "node_modules/stylelint-order/node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/stylelint-order/node_modules/postcss": { + "version": "8.4.19", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.19.tgz", + "integrity": "sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + } + ], + "dependencies": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/stylelint-order/node_modules/postcss-sorting": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-sorting/-/postcss-sorting-7.0.1.tgz", + "integrity": "sha512-iLBFYz6VRYyLJEJsBJ8M3TCqNcckVzz4wFounSc5Oez35ogE/X+aoC5fFu103Ot7NyvjU3/xqIXn93Gp3kJk4g==", + "dev": true, + "peerDependencies": { + "postcss": "^8.3.9" + } + }, + "node_modules/stylelint-scss": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-4.3.0.tgz", + "integrity": "sha512-GvSaKCA3tipzZHoz+nNO7S02ZqOsdBzMiCx9poSmLlb3tdJlGddEX/8QzCOD8O7GQan9bjsvLMsO5xiw6IhhIQ==", + "dev": true, + "dependencies": { + "lodash": "^4.17.21", + "postcss-media-query-parser": "^0.2.3", + "postcss-resolve-nested-selector": "^0.1.1", + "postcss-selector-parser": "^6.0.6", + "postcss-value-parser": "^4.1.0" + }, + "peerDependencies": { + "stylelint": "^14.5.1" + } + }, + "node_modules/stylelint/node_modules/@csstools/selector-specificity": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.0.2.tgz", + "integrity": "sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg==", + "dev": true, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2", + "postcss-selector-parser": "^6.0.10" + } + }, + "node_modules/stylelint/node_modules/balanced-match": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-2.0.0.tgz", + "integrity": "sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==", + "dev": true + }, + "node_modules/stylelint/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/stylelint/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/stylelint/node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/stylelint/node_modules/postcss": { + "version": "8.4.19", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.19.tgz", + "integrity": "sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + } + ], + "dependencies": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/stylelint/node_modules/postcss-safe-parser": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-6.0.0.tgz", + "integrity": "sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==", + "dev": true, + "engines": { + "node": ">=12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.3.3" + } + }, + "node_modules/stylelint/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/stylelint/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/stylelint/node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", + "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", + "dependencies": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/svg-parser": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz", + "integrity": "sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==" + }, + "node_modules/svg-tags": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", + "integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==", + "dev": true + }, + "node_modules/svgo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz", + "integrity": "sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==", + "deprecated": "This SVGO version is no longer supported. Upgrade to v2.x.x.", + "dependencies": { + "chalk": "^2.4.1", + "coa": "^2.0.2", + "css-select": "^2.0.0", + "css-select-base-adapter": "^0.1.1", + "css-tree": "1.0.0-alpha.37", + "csso": "^4.0.2", + "js-yaml": "^3.13.1", + "mkdirp": "~0.5.1", + "object.values": "^1.1.0", + "sax": "~1.2.4", + "stable": "^0.1.8", + "unquote": "~1.1.1", + "util.promisify": "~1.0.0" + }, + "bin": { + "svgo": "bin/svgo" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/svgo/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/svgo/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/svgo/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/svgo/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/svgo/node_modules/css-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", + "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^3.2.1", + "domutils": "^1.7.0", + "nth-check": "^1.0.2" + } + }, + "node_modules/svgo/node_modules/css-what": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz", + "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/svgo/node_modules/dom-serializer": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "dependencies": { + "domelementtype": "^2.0.1", + "entities": "^2.0.0" + } + }, + "node_modules/svgo/node_modules/domutils": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", + "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", + "dependencies": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "node_modules/svgo/node_modules/domutils/node_modules/domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" + }, + "node_modules/svgo/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/svgo/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/svgo/node_modules/nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "dependencies": { + "boolbase": "~1.0.0" + } + }, + "node_modules/svgo/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==" + }, + "node_modules/table": { + "version": "6.8.1", + "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz", + "integrity": "sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==", + "dependencies": { + "ajv": "^8.0.1", + "lodash.truncate": "^4.4.2", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/table/node_modules/ajv": { + "version": "8.11.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.2.tgz", + "integrity": "sha512-E4bfmKAhGiSTvMfL1Myyycaub+cUEU2/IvpylXkUu7CHBkBj1f/ikdzbD7YQ6FKUbixDxeYvB/xY4fvyroDlQg==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/table/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/table/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/table/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "node_modules/table/node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/table/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/tar": { + "version": "6.1.12", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.12.tgz", + "integrity": "sha512-jU4TdemS31uABHd+Lt5WEYJuzn+TJTCBLljvIAHZOz6M9Os5pJ4dD+vRFLxPa/n3T0iEFzpi+0x1UfuDZYbRMw==", + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", + "integrity": "sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/tempy": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/tempy/-/tempy-0.3.0.tgz", + "integrity": "sha512-WrH/pui8YCwmeiAoxV+lpRH9HpRtgBhSR2ViBPgpGb/wnYDzp21R4MN45fsCGvLROvY67o3byhJRYRONJyImVQ==", + "dependencies": { + "temp-dir": "^1.0.0", + "type-fest": "^0.3.1", + "unique-string": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tempy/node_modules/type-fest": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", + "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/terminal-link": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", + "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", + "dependencies": { + "ansi-escapes": "^4.2.1", + "supports-hyperlinks": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/terser": { + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz", + "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==", + "dependencies": { + "commander": "^2.20.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.12" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-4.2.3.tgz", + "integrity": "sha512-jTgXh40RnvOrLQNgIkwEKnQ8rmHjHK4u+6UBEi+W+FPmvb+uo+chJXntKe7/3lW5mNysgSWD60KyesnhW8D6MQ==", + "dependencies": { + "cacache": "^15.0.5", + "find-cache-dir": "^3.3.1", + "jest-worker": "^26.5.0", + "p-limit": "^3.0.2", + "schema-utils": "^3.0.0", + "serialize-javascript": "^5.0.1", + "source-map": "^0.6.1", + "terser": "^5.3.4", + "webpack-sources": "^1.4.3" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/terser-webpack-plugin/node_modules/acorn": { + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/terser-webpack-plugin/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "node_modules/terser-webpack-plugin/node_modules/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + } + }, + "node_modules/terser-webpack-plugin/node_modules/jest-worker": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", + "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/terser-webpack-plugin/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/terser-webpack-plugin/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/terser-webpack-plugin/node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/terser-webpack-plugin/node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/terser-webpack-plugin/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/terser-webpack-plugin/node_modules/terser": { + "version": "5.15.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.15.1.tgz", + "integrity": "sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==", + "dependencies": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" + }, + "node_modules/throat": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz", + "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==" + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "node_modules/through2": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", + "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", + "dev": true, + "dependencies": { + "readable-stream": "3" + } + }, + "node_modules/thunky": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" + }, + "node_modules/timers-browserify": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", + "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", + "dependencies": { + "setimmediate": "^1.0.4" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/timsort": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz", + "integrity": "sha512-qsdtZH+vMoCARQtyod4imc2nIJwg9Cc7lPRrw9CzF8ZKR0khdr8+2nX80PBhET3tcyTtJDxAffGh2rXH4tyU8A==" + }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==" + }, + "node_modules/to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha512-okFlQcoGTi4LQBG/PgSYblw9VOyptsz2KJZqc6qtgGdes8VktzUQkj4BI2blit072iS8VODNcMA+tvnS9dnuMA==" + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-object-path/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dependencies": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tough-cookie": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.2.tgz", + "integrity": "sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==", + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tough-cookie/node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "node_modules/trim-newlines": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", + "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/tryer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tryer/-/tryer-1.0.1.tgz", + "integrity": "sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA==" + }, + "node_modules/ts-pnp": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/ts-pnp/-/ts-pnp-1.2.0.tgz", + "integrity": "sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw==", + "engines": { + "node": ">=6" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/tsconfig-paths": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", + "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==", + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "node_modules/tsconfig-paths/node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/tsconfig-paths/node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/tslib": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", + "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" + }, + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dependencies": { + "tslib": "^1.8.1" + }, + "engines": { + "node": ">= 6" + }, + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + } + }, + "node_modules/tsutils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/tty-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", + "integrity": "sha512-JVa5ijo+j/sOoHGjw0sxw734b1LhBkQ3bvUGNdxnVXDCX81Yx7TFgnZygxrIIWn23hbfTaMYLwRmAxFyDuFmIw==" + }, + "node_modules/tweetnacl": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", + "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" + }, + "node_modules/type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==" + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/typescript": { + "version": "4.8.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.4.tgz", + "integrity": "sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ==", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/typeson": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/typeson/-/typeson-6.1.0.tgz", + "integrity": "sha512-6FTtyGr8ldU0pfbvW/eOZrEtEkczHRUtduBnA90Jh9kMPCiFNnXIon3vF41N0S4tV1HHQt4Hk1j4srpESziCaA==", + "dev": true, + "engines": { + "node": ">=0.1.14" + } + }, + "node_modules/typeson-registry": { + "version": "1.0.0-alpha.39", + "resolved": "https://registry.npmjs.org/typeson-registry/-/typeson-registry-1.0.0-alpha.39.tgz", + "integrity": "sha512-NeGDEquhw+yfwNhguLPcZ9Oj0fzbADiX4R0WxvoY8nGhy98IbzQy1sezjoEFWOywOboj/DWehI+/aUlRVrJnnw==", + "dev": true, + "dependencies": { + "base64-arraybuffer-es6": "^0.7.0", + "typeson": "^6.0.0", + "whatwg-url": "^8.4.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/typeson-registry/node_modules/tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "dev": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/typeson-registry/node_modules/whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "dev": true, + "dependencies": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "engines": { + "node": ">=4" + } + }, + "node_modules/union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "dependencies": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/union-value/node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/uniq": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", + "integrity": "sha512-Gw+zz50YNKPDKXs+9d+aKAjVwpjNwqzvNpLigIruT4HA9lMZNdMqs9x07kKHB/L9WRzqp4+DlTU5s4wG2esdoA==" + }, + "node_modules/uniqs": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/uniqs/-/uniqs-2.0.0.tgz", + "integrity": "sha512-mZdDpf3vBV5Efh29kMw5tXoup/buMgxLzOt/XKFKcVmi+15ManNQWr6HfZ2aiZTYlYixbdNJ0KFmIZIv52tHSQ==" + }, + "node_modules/unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dependencies": { + "unique-slug": "^2.0.0" + } + }, + "node_modules/unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "dependencies": { + "imurmurhash": "^0.1.4" + } + }, + "node_modules/unique-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", + "integrity": "sha512-ODgiYu03y5g76A1I9Gt0/chLCzQjvzDy7DsZGsLOE/1MrF6wriEskSncj1+/C58Xk/kPZDppSctDybCwOSaGAg==", + "dependencies": { + "crypto-random-string": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/unquote": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", + "integrity": "sha512-vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg==" + }, + "node_modules/unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==", + "dependencies": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==", + "dependencies": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", + "dependencies": { + "isarray": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/upath": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", + "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", + "engines": { + "node": ">=4", + "yarn": "*" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist-lint": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/update-browserslist-db/node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==", + "deprecated": "Please see https://github.com/lydell/urix#deprecated" + }, + "node_modules/url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", + "dependencies": { + "punycode": "1.3.2", + "querystring": "0.2.0" + } + }, + "node_modules/url-loader": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz", + "integrity": "sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==", + "dependencies": { + "loader-utils": "^2.0.0", + "mime-types": "^2.1.27", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "file-loader": "*", + "webpack": "^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "file-loader": { + "optional": true + } + } + }, + "node_modules/url-loader/node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/url/node_modules/punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==" + }, + "node_modules/use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/use-composed-ref": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/use-composed-ref/-/use-composed-ref-1.3.0.tgz", + "integrity": "sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/use-isomorphic-layout-effect": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.2.tgz", + "integrity": "sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-latest": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/use-latest/-/use-latest-1.2.1.tgz", + "integrity": "sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==", + "dependencies": { + "use-isomorphic-layout-effect": "^1.1.1" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/util": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", + "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", + "dependencies": { + "inherits": "2.0.3" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "node_modules/util.promisify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", + "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", + "dependencies": { + "define-properties": "^1.1.2", + "object.getownpropertydescriptors": "^2.0.3" + } + }, + "node_modules/util/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==" + }, + "node_modules/utila": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", + "integrity": "sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==" + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/v8-compile-cache": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==" + }, + "node_modules/v8-to-istanbul": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-7.1.2.tgz", + "integrity": "sha512-TxNb7YEUwkLXCQYeudi6lgQ/SZrzNO4kMdlqVxaZPUIUjCv6iSSypUQX70kNBSERpQ8fk48+d61FXk+tgqcWow==", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0", + "source-map": "^0.7.3" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/v8-to-istanbul/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/vendors": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.4.tgz", + "integrity": "sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/vlq": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/vlq/-/vlq-2.0.4.tgz", + "integrity": "sha512-aodjPa2wPQFkra1G8CzJBTHXhgk3EVSwxSWXNPr1fgdFLUb8kvLV1iEb6rFgasIsjP82HWI6dsb5Io26DDnasA==" + }, + "node_modules/vm-browserify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" + }, + "node_modules/w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", + "dependencies": { + "browser-process-hrtime": "^1.0.0" + } + }, + "node_modules/w3c-xmlserializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", + "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "dependencies": { + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/warning": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz", + "integrity": "sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==", + "dependencies": { + "loose-envify": "^1.0.0" + } + }, + "node_modules/watchpack": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz", + "integrity": "sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ==", + "dependencies": { + "graceful-fs": "^4.1.2", + "neo-async": "^2.5.0" + }, + "optionalDependencies": { + "chokidar": "^3.4.1", + "watchpack-chokidar2": "^2.0.1" + } + }, + "node_modules/watchpack-chokidar2": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz", + "integrity": "sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww==", + "optional": true, + "dependencies": { + "chokidar": "^2.1.8" + } + }, + "node_modules/watchpack-chokidar2/node_modules/anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "optional": true, + "dependencies": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + } + }, + "node_modules/watchpack-chokidar2/node_modules/anymatch/node_modules/normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", + "optional": true, + "dependencies": { + "remove-trailing-separator": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "optional": true, + "dependencies": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/braces/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "optional": true, + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", + "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "deprecated": "Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies", + "optional": true, + "dependencies": { + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" + }, + "optionalDependencies": { + "fsevents": "^1.2.7" + } + }, + "node_modules/watchpack-chokidar2/node_modules/fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", + "optional": true, + "dependencies": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/fill-range/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "optional": true, + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "deprecated": "fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "dependencies": { + "bindings": "^1.5.0", + "nan": "^2.12.1" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==", + "optional": true, + "dependencies": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/glob-parent/node_modules/is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==", + "optional": true, + "dependencies": { + "is-extglob": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==", + "optional": true, + "dependencies": { + "binary-extensions": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "optional": true, + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "optional": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "optional": true + }, + "node_modules/watchpack-chokidar2/node_modules/micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "optional": true, + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "optional": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/watchpack-chokidar2/node_modules/readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "optional": true, + "dependencies": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/watchpack-chokidar2/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "optional": true + }, + "node_modules/watchpack-chokidar2/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "optional": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/watchpack-chokidar2/node_modules/to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "optional": true, + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dependencies": { + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/web-vitals": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/web-vitals/-/web-vitals-3.0.4.tgz", + "integrity": "sha512-Yau8qf1AJ/dm6MY180Bi0qpCIuWmAfKAnOqmxLecGfIHn0+ND3H4JOhXeY73Pyi9zjSF5J4SNUewHLNUzU7mmA==" + }, + "node_modules/webfontloader": { + "version": "1.6.28", + "resolved": "https://registry.npmjs.org/webfontloader/-/webfontloader-1.6.28.tgz", + "integrity": "sha512-Egb0oFEga6f+nSgasH3E0M405Pzn6y3/9tOVanv/DLfa1YBIgcv90L18YyWnvXkRbIM17v5Kv6IT2N6g1x5tvQ==" + }, + "node_modules/webidl-conversions": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "engines": { + "node": ">=10.4" + } + }, + "node_modules/webpack": { + "version": "4.44.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.44.2.tgz", + "integrity": "sha512-6KJVGlCxYdISyurpQ0IPTklv+DULv05rs2hseIXer6D7KrUicRDLFb4IUM1S6LUAKypPM/nSiVSuv8jHu1m3/Q==", + "dependencies": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/wasm-edit": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0", + "acorn": "^6.4.1", + "ajv": "^6.10.2", + "ajv-keywords": "^3.4.1", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^4.3.0", + "eslint-scope": "^4.0.3", + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^2.4.0", + "loader-utils": "^1.2.3", + "memory-fs": "^0.4.1", + "micromatch": "^3.1.10", + "mkdirp": "^0.5.3", + "neo-async": "^2.6.1", + "node-libs-browser": "^2.2.1", + "schema-utils": "^1.0.0", + "tapable": "^1.1.3", + "terser-webpack-plugin": "^1.4.3", + "watchpack": "^1.7.4", + "webpack-sources": "^1.4.1" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=6.11.5" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + }, + "webpack-command": { + "optional": true + } + } + }, + "node_modules/webpack-dev-middleware": { + "version": "3.7.3", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.7.3.tgz", + "integrity": "sha512-djelc/zGiz9nZj/U7PTBi2ViorGJXEWo/3ltkPbDyxCXhhEXkW0ce99falaok4TPj+AsxLiXJR0EBOb0zh9fKQ==", + "dependencies": { + "memory-fs": "^0.4.1", + "mime": "^2.4.4", + "mkdirp": "^0.5.1", + "range-parser": "^1.2.1", + "webpack-log": "^2.0.0" + }, + "engines": { + "node": ">= 6" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/webpack-dev-middleware/node_modules/mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/webpack-dev-server": { + "version": "3.11.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.11.1.tgz", + "integrity": "sha512-u4R3mRzZkbxQVa+MBWi2uVpB5W59H3ekZAJsQlKUTdl7Elcah2EhygTPLmeFXybQkf9i2+L0kn7ik9SnXa6ihQ==", + "dependencies": { + "ansi-html": "0.0.7", + "bonjour": "^3.5.0", + "chokidar": "^2.1.8", + "compression": "^1.7.4", + "connect-history-api-fallback": "^1.6.0", + "debug": "^4.1.1", + "del": "^4.1.1", + "express": "^4.17.1", + "html-entities": "^1.3.1", + "http-proxy-middleware": "0.19.1", + "import-local": "^2.0.0", + "internal-ip": "^4.3.0", + "ip": "^1.1.5", + "is-absolute-url": "^3.0.3", + "killable": "^1.0.1", + "loglevel": "^1.6.8", + "opn": "^5.5.0", + "p-retry": "^3.0.1", + "portfinder": "^1.0.26", + "schema-utils": "^1.0.0", + "selfsigned": "^1.10.8", + "semver": "^6.3.0", + "serve-index": "^1.9.1", + "sockjs": "^0.3.21", + "sockjs-client": "^1.5.0", + "spdy": "^4.0.2", + "strip-ansi": "^3.0.1", + "supports-color": "^6.1.0", + "url": "^0.11.0", + "webpack-dev-middleware": "^3.7.2", + "webpack-log": "^2.0.0", + "ws": "^6.2.1", + "yargs": "^13.3.2" + }, + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 6.11.5" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-server/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack-dev-server/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/webpack-dev-server/node_modules/anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dependencies": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + } + }, + "node_modules/webpack-dev-server/node_modules/anymatch/node_modules/normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", + "dependencies": { + "remove-trailing-separator": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack-dev-server/node_modules/binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack-dev-server/node_modules/braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dependencies": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack-dev-server/node_modules/braces/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack-dev-server/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/webpack-dev-server/node_modules/chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", + "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "deprecated": "Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies", + "dependencies": { + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" + }, + "optionalDependencies": { + "fsevents": "^1.2.7" + } + }, + "node_modules/webpack-dev-server/node_modules/cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dependencies": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "node_modules/webpack-dev-server/node_modules/cliui/node_modules/ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "engines": { + "node": ">=6" + } + }, + "node_modules/webpack-dev-server/node_modules/cliui/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/webpack-dev-server/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/webpack-dev-server/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/webpack-dev-server/node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + }, + "node_modules/webpack-dev-server/node_modules/fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", + "dependencies": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack-dev-server/node_modules/fill-range/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack-dev-server/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/webpack-dev-server/node_modules/fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "deprecated": "fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "dependencies": { + "bindings": "^1.5.0", + "nan": "^2.12.1" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/webpack-dev-server/node_modules/glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==", + "dependencies": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + } + }, + "node_modules/webpack-dev-server/node_modules/glob-parent/node_modules/is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==", + "dependencies": { + "is-extglob": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack-dev-server/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/webpack-dev-server/node_modules/import-local": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", + "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", + "dependencies": { + "pkg-dir": "^3.0.0", + "resolve-cwd": "^2.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/webpack-dev-server/node_modules/is-absolute-url": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-3.0.3.tgz", + "integrity": "sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/webpack-dev-server/node_modules/is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==", + "dependencies": { + "binary-extensions": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack-dev-server/node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack-dev-server/node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", + "engines": { + "node": ">=4" + } + }, + "node_modules/webpack-dev-server/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack-dev-server/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack-dev-server/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/webpack-dev-server/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/webpack-dev-server/node_modules/micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack-dev-server/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/webpack-dev-server/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/webpack-dev-server/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/webpack-dev-server/node_modules/readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "dependencies": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/webpack-dev-server/node_modules/resolve-cwd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", + "integrity": "sha512-ccu8zQTrzVr954472aUVPLEcB3YpKSYR3cg/3lo1okzobPBM+1INXBbBZlDbnI/hbEocnf8j0QVo43hQKrbchg==", + "dependencies": { + "resolve-from": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/webpack-dev-server/node_modules/resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/webpack-dev-server/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/webpack-dev-server/node_modules/schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dependencies": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/webpack-dev-server/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/webpack-dev-server/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/webpack-dev-server/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/webpack-dev-server/node_modules/string-width/node_modules/ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "engines": { + "node": ">=6" + } + }, + "node_modules/webpack-dev-server/node_modules/string-width/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/webpack-dev-server/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack-dev-server/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/webpack-dev-server/node_modules/to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack-dev-server/node_modules/wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dependencies": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/webpack-dev-server/node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "engines": { + "node": ">=6" + } + }, + "node_modules/webpack-dev-server/node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/webpack-dev-server/node_modules/ws": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz", + "integrity": "sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==", + "dependencies": { + "async-limiter": "~1.0.0" + } + }, + "node_modules/webpack-dev-server/node_modules/yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "dependencies": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" + } + }, + "node_modules/webpack-dev-server/node_modules/yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + }, + "node_modules/webpack-log": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-2.0.0.tgz", + "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==", + "dependencies": { + "ansi-colors": "^3.0.0", + "uuid": "^3.3.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/webpack-log/node_modules/ansi-colors": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz", + "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/webpack-log/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/webpack-manifest-plugin": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/webpack-manifest-plugin/-/webpack-manifest-plugin-2.2.0.tgz", + "integrity": "sha512-9S6YyKKKh/Oz/eryM1RyLVDVmy3NSPV0JXMRhZ18fJsq+AwGxUY34X54VNwkzYcEmEkDwNxuEOboCZEebJXBAQ==", + "dependencies": { + "fs-extra": "^7.0.0", + "lodash": ">=3.5 <5", + "object.entries": "^1.1.0", + "tapable": "^1.0.0" + }, + "engines": { + "node": ">=6.11.5" + }, + "peerDependencies": { + "webpack": "2 || 3 || 4" + } + }, + "node_modules/webpack-manifest-plugin/node_modules/fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/webpack-manifest-plugin/node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/webpack-manifest-plugin/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/webpack-sources": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", + "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", + "dependencies": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + } + }, + "node_modules/webpack/node_modules/acorn": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", + "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/webpack/node_modules/braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dependencies": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack/node_modules/braces/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack/node_modules/cacache": { + "version": "12.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", + "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", + "dependencies": { + "bluebird": "^3.5.5", + "chownr": "^1.1.1", + "figgy-pudding": "^3.5.1", + "glob": "^7.1.4", + "graceful-fs": "^4.1.15", + "infer-owner": "^1.0.3", + "lru-cache": "^5.1.1", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.3", + "ssri": "^6.0.1", + "unique-filename": "^1.1.1", + "y18n": "^4.0.0" + } + }, + "node_modules/webpack/node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + }, + "node_modules/webpack/node_modules/eslint-scope": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", + "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "dependencies": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/webpack/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/webpack/node_modules/fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", + "dependencies": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack/node_modules/fill-range/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack/node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack/node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack/node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack/node_modules/is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/webpack/node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/webpack/node_modules/loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/webpack/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/webpack/node_modules/micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/webpack/node_modules/schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dependencies": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/webpack/node_modules/serialize-javascript": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", + "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/webpack/node_modules/ssri": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", + "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", + "dependencies": { + "figgy-pudding": "^3.5.1" + } + }, + "node_modules/webpack/node_modules/terser-webpack-plugin": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz", + "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==", + "dependencies": { + "cacache": "^12.0.2", + "find-cache-dir": "^2.1.0", + "is-wsl": "^1.1.0", + "schema-utils": "^1.0.0", + "serialize-javascript": "^4.0.0", + "source-map": "^0.6.1", + "terser": "^4.1.2", + "webpack-sources": "^1.4.0", + "worker-farm": "^1.7.0" + }, + "engines": { + "node": ">= 6.9.0" + }, + "peerDependencies": { + "webpack": "^4.0.0" + } + }, + "node_modules/webpack/node_modules/to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "node_modules/websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "dependencies": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dependencies": { + "iconv-lite": "0.4.24" + } + }, + "node_modules/whatwg-fetch": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz", + "integrity": "sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA==" + }, + "node_modules/whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/whatwg-url/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==" + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/workbox-background-sync": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-background-sync/-/workbox-background-sync-5.1.4.tgz", + "integrity": "sha512-AH6x5pYq4vwQvfRDWH+vfOePfPIYQ00nCEB7dJRU1e0n9+9HMRyvI63FlDvtFT2AvXVRsXvUt7DNMEToyJLpSA==", + "dependencies": { + "workbox-core": "^5.1.4" + } + }, + "node_modules/workbox-broadcast-update": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-broadcast-update/-/workbox-broadcast-update-5.1.4.tgz", + "integrity": "sha512-HTyTWkqXvHRuqY73XrwvXPud/FN6x3ROzkfFPsRjtw/kGZuZkPzfeH531qdUGfhtwjmtO/ZzXcWErqVzJNdXaA==", + "dependencies": { + "workbox-core": "^5.1.4" + } + }, + "node_modules/workbox-build": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-build/-/workbox-build-5.1.4.tgz", + "integrity": "sha512-xUcZn6SYU8usjOlfLb9Y2/f86Gdo+fy1fXgH8tJHjxgpo53VVsqRX0lUDw8/JuyzNmXuo8vXX14pXX2oIm9Bow==", + "dependencies": { + "@babel/core": "^7.8.4", + "@babel/preset-env": "^7.8.4", + "@babel/runtime": "^7.8.4", + "@hapi/joi": "^15.1.0", + "@rollup/plugin-node-resolve": "^7.1.1", + "@rollup/plugin-replace": "^2.3.1", + "@surma/rollup-plugin-off-main-thread": "^1.1.1", + "common-tags": "^1.8.0", + "fast-json-stable-stringify": "^2.1.0", + "fs-extra": "^8.1.0", + "glob": "^7.1.6", + "lodash.template": "^4.5.0", + "pretty-bytes": "^5.3.0", + "rollup": "^1.31.1", + "rollup-plugin-babel": "^4.3.3", + "rollup-plugin-terser": "^5.3.1", + "source-map": "^0.7.3", + "source-map-url": "^0.4.0", + "stringify-object": "^3.3.0", + "strip-comments": "^1.0.2", + "tempy": "^0.3.0", + "upath": "^1.2.0", + "workbox-background-sync": "^5.1.4", + "workbox-broadcast-update": "^5.1.4", + "workbox-cacheable-response": "^5.1.4", + "workbox-core": "^5.1.4", + "workbox-expiration": "^5.1.4", + "workbox-google-analytics": "^5.1.4", + "workbox-navigation-preload": "^5.1.4", + "workbox-precaching": "^5.1.4", + "workbox-range-requests": "^5.1.4", + "workbox-routing": "^5.1.4", + "workbox-strategies": "^5.1.4", + "workbox-streams": "^5.1.4", + "workbox-sw": "^5.1.4", + "workbox-window": "^5.1.4" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/workbox-build/node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/workbox-build/node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/workbox-build/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/workbox-build/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/workbox-cacheable-response": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-cacheable-response/-/workbox-cacheable-response-5.1.4.tgz", + "integrity": "sha512-0bfvMZs0Of1S5cdswfQK0BXt6ulU5kVD4lwer2CeI+03czHprXR3V4Y8lPTooamn7eHP8Iywi5QjyAMjw0qauA==", + "dependencies": { + "workbox-core": "^5.1.4" + } + }, + "node_modules/workbox-core": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-core/-/workbox-core-5.1.4.tgz", + "integrity": "sha512-+4iRQan/1D8I81nR2L5vcbaaFskZC2CL17TLbvWVzQ4qiF/ytOGF6XeV54pVxAvKUtkLANhk8TyIUMtiMw2oDg==" + }, + "node_modules/workbox-expiration": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-expiration/-/workbox-expiration-5.1.4.tgz", + "integrity": "sha512-oDO/5iC65h2Eq7jctAv858W2+CeRW5e0jZBMNRXpzp0ZPvuT6GblUiHnAsC5W5lANs1QS9atVOm4ifrBiYY7AQ==", + "dependencies": { + "workbox-core": "^5.1.4" + } + }, + "node_modules/workbox-google-analytics": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-google-analytics/-/workbox-google-analytics-5.1.4.tgz", + "integrity": "sha512-0IFhKoEVrreHpKgcOoddV+oIaVXBFKXUzJVBI+nb0bxmcwYuZMdteBTp8AEDJacENtc9xbR0wa9RDCnYsCDLjA==", + "dependencies": { + "workbox-background-sync": "^5.1.4", + "workbox-core": "^5.1.4", + "workbox-routing": "^5.1.4", + "workbox-strategies": "^5.1.4" + } + }, + "node_modules/workbox-navigation-preload": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-navigation-preload/-/workbox-navigation-preload-5.1.4.tgz", + "integrity": "sha512-Wf03osvK0wTflAfKXba//QmWC5BIaIZARU03JIhAEO2wSB2BDROWI8Q/zmianf54kdV7e1eLaIEZhth4K4MyfQ==", + "dependencies": { + "workbox-core": "^5.1.4" + } + }, + "node_modules/workbox-precaching": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-precaching/-/workbox-precaching-5.1.4.tgz", + "integrity": "sha512-gCIFrBXmVQLFwvAzuGLCmkUYGVhBb7D1k/IL7pUJUO5xacjLcFUaLnnsoVepBGAiKw34HU1y/YuqvTKim9qAZA==", + "dependencies": { + "workbox-core": "^5.1.4" + } + }, + "node_modules/workbox-range-requests": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-range-requests/-/workbox-range-requests-5.1.4.tgz", + "integrity": "sha512-1HSujLjgTeoxHrMR2muDW2dKdxqCGMc1KbeyGcmjZZAizJTFwu7CWLDmLv6O1ceWYrhfuLFJO+umYMddk2XMhw==", + "dependencies": { + "workbox-core": "^5.1.4" + } + }, + "node_modules/workbox-routing": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-routing/-/workbox-routing-5.1.4.tgz", + "integrity": "sha512-8ljknRfqE1vEQtnMtzfksL+UXO822jJlHTIR7+BtJuxQ17+WPZfsHqvk1ynR/v0EHik4x2+826Hkwpgh4GKDCw==", + "dependencies": { + "workbox-core": "^5.1.4" + } + }, + "node_modules/workbox-strategies": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-strategies/-/workbox-strategies-5.1.4.tgz", + "integrity": "sha512-VVS57LpaJTdjW3RgZvPwX0NlhNmscR7OQ9bP+N/34cYMDzXLyA6kqWffP6QKXSkca1OFo/v6v7hW7zrrguo6EA==", + "dependencies": { + "workbox-core": "^5.1.4", + "workbox-routing": "^5.1.4" + } + }, + "node_modules/workbox-streams": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-streams/-/workbox-streams-5.1.4.tgz", + "integrity": "sha512-xU8yuF1hI/XcVhJUAfbQLa1guQUhdLMPQJkdT0kn6HP5CwiPOGiXnSFq80rAG4b1kJUChQQIGPrq439FQUNVrw==", + "dependencies": { + "workbox-core": "^5.1.4", + "workbox-routing": "^5.1.4" + } + }, + "node_modules/workbox-sw": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-sw/-/workbox-sw-5.1.4.tgz", + "integrity": "sha512-9xKnKw95aXwSNc8kk8gki4HU0g0W6KXu+xks7wFuC7h0sembFnTrKtckqZxbSod41TDaGh+gWUA5IRXrL0ECRA==" + }, + "node_modules/workbox-webpack-plugin": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-webpack-plugin/-/workbox-webpack-plugin-5.1.4.tgz", + "integrity": "sha512-PZafF4HpugZndqISi3rZ4ZK4A4DxO8rAqt2FwRptgsDx7NF8TVKP86/huHquUsRjMGQllsNdn4FNl8CD/UvKmQ==", + "dependencies": { + "@babel/runtime": "^7.5.5", + "fast-json-stable-stringify": "^2.0.0", + "source-map-url": "^0.4.0", + "upath": "^1.1.2", + "webpack-sources": "^1.3.0", + "workbox-build": "^5.1.4" + }, + "engines": { + "node": ">=8.0.0" + }, + "peerDependencies": { + "webpack": "^4.0.0" + } + }, + "node_modules/workbox-window": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-window/-/workbox-window-5.1.4.tgz", + "integrity": "sha512-vXQtgTeMCUq/4pBWMfQX8Ee7N2wVC4Q7XYFqLnfbXJ2hqew/cU1uMTD2KqGEgEpE4/30luxIxgE+LkIa8glBYw==", + "dependencies": { + "workbox-core": "^5.1.4" + } + }, + "node_modules/worker-farm": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", + "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", + "dependencies": { + "errno": "~0.1.7" + } + }, + "node_modules/worker-rpc": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/worker-rpc/-/worker-rpc-0.1.1.tgz", + "integrity": "sha512-P1WjMrUB3qgJNI9jfmpZ/htmBEjFh//6l/5y8SD9hg1Ef5zTTVVoRjTrTEzPrNBQvmhMxkoTsjOXN10GWU7aCg==", + "dependencies": { + "microevent.ts": "~0.1.1" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/wrap-ansi/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/ws": { + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==" + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==" + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "engines": { + "node": ">=0.4" + } + }, + "node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/yaml": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.1.3.tgz", + "integrity": "sha512-AacA8nRULjKMX2DvWvOAdBZMOfQlypSFkjcOcu9FalllIDJ1kvlREzcdIZmidQUqqeMv7jorHjq2HlLv/+c2lg==", + "dev": true, + "engines": { + "node": ">= 14" + } + }, + "node_modules/yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "dependencies": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/yargs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/yargs/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + }, + "dependencies": { + "@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "requires": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "requires": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + } + } + }, + "@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "requires": { + "@babel/highlight": "^7.18.6" + } + }, + "@babel/compat-data": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.1.tgz", + "integrity": "sha512-EWZ4mE2diW3QALKvDMiXnbZpRvlj+nayZ112nK93SnhqOtpdsbVD4W+2tEoT3YNBAG9RBR0ISY758ZkOgsn6pQ==" + }, + "@babel/core": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.2.tgz", + "integrity": "sha512-w7DbG8DtMrJcFOi4VrLm+8QM4az8Mo+PuLBKLp2zrYRCow8W/f9xiXm5sN53C8HksCyDQwCKha9JiDoIyPjT2g==", + "requires": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.2", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-module-transforms": "^7.20.2", + "@babel/helpers": "^7.20.1", + "@babel/parser": "^7.20.2", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.2", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.1", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "@babel/generator": { + "version": "7.20.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.4.tgz", + "integrity": "sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==", + "requires": { + "@babel/types": "^7.20.2", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", + "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", + "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", + "requires": { + "@babel/helper-explode-assignable-expression": "^7.18.6", + "@babel/types": "^7.18.9" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz", + "integrity": "sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==", + "requires": { + "@babel/compat-data": "^7.20.0", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.20.2.tgz", + "integrity": "sha512-k22GoYRAHPYr9I+Gvy2ZQlAe5mGy8BqWst2wRt8cwIufWTxrsVshhIBvYNqC80N0GSFWTsqRVexOtfzlgOEDvA==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-member-expression-to-functions": "^7.18.9", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-replace-supers": "^7.19.1", + "@babel/helper-split-export-declaration": "^7.18.6" + } + }, + "@babel/helper-create-regexp-features-plugin": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.19.0.tgz", + "integrity": "sha512-htnV+mHX32DF81amCDrwIDr8nrp1PTm+3wfBN9/v8QJOLEioOCOG7qNyq0nHeFiWbT3Eb7gsPwEmV64UCQ1jzw==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "regexpu-core": "^5.1.0" + } + }, + "@babel/helper-define-polyfill-provider": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", + "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", + "requires": { + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "@babel/helper-environment-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==" + }, + "@babel/helper-explode-assignable-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", + "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-function-name": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", + "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", + "requires": { + "@babel/template": "^7.18.10", + "@babel/types": "^7.19.0" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz", + "integrity": "sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg==", + "requires": { + "@babel/types": "^7.18.9" + } + }, + "@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-module-transforms": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz", + "integrity": "sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA==", + "requires": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.2" + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", + "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", + "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==" + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", + "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-wrap-function": "^7.18.9", + "@babel/types": "^7.18.9" + } + }, + "@babel/helper-replace-supers": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.19.1.tgz", + "integrity": "sha512-T7ahH7wV0Hfs46SFh5Jz3s0B6+o8g3c+7TMxu7xKfmHikg7EAZ3I2Qk9LFhjxXq8sL7UkP5JflezNwoZa8WvWw==", + "requires": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-member-expression-to-functions": "^7.18.9", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/traverse": "^7.19.1", + "@babel/types": "^7.19.0" + } + }, + "@babel/helper-simple-access": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "requires": { + "@babel/types": "^7.20.2" + } + }, + "@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", + "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", + "requires": { + "@babel/types": "^7.20.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==" + }, + "@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==" + }, + "@babel/helper-validator-option": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", + "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==" + }, + "@babel/helper-wrap-function": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.19.0.tgz", + "integrity": "sha512-txX8aN8CZyYGTwcLhlk87KRqncAzhh5TpQamZUa0/u3an36NtDpUP6bQgBCBcLeBs09R/OwQu3OjK0k/HwfNDg==", + "requires": { + "@babel/helper-function-name": "^7.19.0", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.19.0", + "@babel/types": "^7.19.0" + } + }, + "@babel/helpers": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.1.tgz", + "integrity": "sha512-J77mUVaDTUJFZ5BpP6mMn6OIl3rEWymk2ZxDBQJUG3P+PbmyMcF3bYWvz0ma69Af1oobDqT/iAsvzhB58xhQUg==", + "requires": { + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.0" + } + }, + "@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "requires": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "@babel/parser": { + "version": "7.20.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.3.tgz", + "integrity": "sha512-OP/s5a94frIPXwjzEcv5S/tpQfc6XhxYUnmWpgdqMWGgYCuErA3SzozaRAMQgSZWKeTJxht9aWAkUY+0UzvOFg==" + }, + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", + "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.18.9.tgz", + "integrity": "sha512-AHrP9jadvH7qlOj6PINbgSuphjQUAK7AOT7DPjBo9EHoLhQTnnK5u45e1Hd4DbSQEO9nqPWtQ89r+XEOWFScKg==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", + "@babel/plugin-proposal-optional-chaining": "^7.18.9" + } + }, + "@babel/plugin-proposal-async-generator-functions": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.1.tgz", + "integrity": "sha512-Gh5rchzSwE4kC+o/6T8waD0WHEQIsDmjltY8WnWRXHUdH8axZhuH86Ov9M72YhJfDrZseQwuuWaaIT/TmePp3g==", + "requires": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/helper-remap-async-to-generator": "^7.18.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" + } + }, + "@babel/plugin-proposal-class-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", + "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", + "requires": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-proposal-class-static-block": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.6.tgz", + "integrity": "sha512-+I3oIiNxrCpup3Gi8n5IGMwj0gOCAjcJUSQEcotNnCCPMEnixawOQ+KeJPlgfjzx+FKQ1QSyZOWe7wmoJp7vhw==", + "requires": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + } + }, + "@babel/plugin-proposal-decorators": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.20.2.tgz", + "integrity": "sha512-nkBH96IBmgKnbHQ5gXFrcmez+Z9S2EIDKDQGp005ROqBigc88Tky4rzCnlP/lnlj245dCEQl4/YyV0V1kYh5dw==", + "requires": { + "@babel/helper-create-class-features-plugin": "^7.20.2", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-replace-supers": "^7.19.1", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/plugin-syntax-decorators": "^7.19.0" + } + }, + "@babel/plugin-proposal-dynamic-import": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", + "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + } + }, + "@babel/plugin-proposal-export-namespace-from": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", + "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + } + }, + "@babel/plugin-proposal-json-strings": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", + "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-json-strings": "^7.8.3" + } + }, + "@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.18.9.tgz", + "integrity": "sha512-128YbMpjCrP35IOExw2Fq+x55LMP42DzhOhX2aNNIdI9avSWl2PI0yuBWarr3RYpZBSPtabfadkH2yeRiMD61Q==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + } + }, + "@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", + "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + } + }, + "@babel/plugin-proposal-numeric-separator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", + "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + } + }, + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.2.tgz", + "integrity": "sha512-Ks6uej9WFK+fvIMesSqbAto5dD8Dz4VuuFvGJFKgIGSkJuRGcrwGECPA1fDgQK3/DbExBJpEkTeYeB8geIFCSQ==", + "requires": { + "@babel/compat-data": "^7.20.1", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.20.1" + } + }, + "@babel/plugin-proposal-optional-catch-binding": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", + "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + } + }, + "@babel/plugin-proposal-optional-chaining": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.18.9.tgz", + "integrity": "sha512-v5nwt4IqBXihxGsW2QmCWMDS3B3bzGIk/EQVZz2ei7f3NJl8NzAJVvUmpDW5q1CRNY+Beb/k58UAH1Km1N411w==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + } + }, + "@babel/plugin-proposal-private-methods": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", + "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", + "requires": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-proposal-private-property-in-object": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.18.6.tgz", + "integrity": "sha512-9Rysx7FOctvT5ouj5JODjAFAkgGoudQuLPamZb0v1TGLpapdNaftzifU8NTWQm0IRjqoYypdrSmyWgkocDQ8Dw==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + } + }, + "@babel/plugin-proposal-unicode-property-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "requires": { + "@babel/helper-plugin-utils": "^7.12.13" + } + }, + "@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-decorators": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.19.0.tgz", + "integrity": "sha512-xaBZUEDntt4faL1yN8oIFlhfXeQAWJW7CLKYsHTUqriCUbj8xOra8bfxxKGi/UwExPFBuPdH4XfHc9rGQhrVkQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.19.0" + } + }, + "@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-syntax-flow": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.18.6.tgz", + "integrity": "sha512-LUbR+KNTBWCUAqRG9ex5Gnzu2IOkt8jRJbHHXFT9q+L9zm7M/QQbEqXyw1n1pohYvOyWC8CjeyjrSaIwiYjK7A==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-syntax-import-assertions": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz", + "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.19.0" + } + }, + "@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-jsx": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz", + "integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-typescript": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz", + "integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.19.0" + } + }, + "@babel/plugin-transform-arrow-functions": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz", + "integrity": "sha512-9S9X9RUefzrsHZmKMbDXxweEH+YlE8JJEuat9FdvW9Qh1cw7W64jELCtWNkPBPX5En45uy28KGvA/AySqUh8CQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-async-to-generator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz", + "integrity": "sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag==", + "requires": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-remap-async-to-generator": "^7.18.6" + } + }, + "@babel/plugin-transform-block-scoped-functions": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", + "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-block-scoping": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.20.2.tgz", + "integrity": "sha512-y5V15+04ry69OV2wULmwhEA6jwSWXO1TwAtIwiPXcvHcoOQUqpyMVd2bDsQJMW8AurjulIyUV8kDqtjSwHy1uQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-classes": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.20.2.tgz", + "integrity": "sha512-9rbPp0lCVVoagvtEyQKSo5L8oo0nQS/iif+lwlAz29MccX2642vWDlSZK+2T2buxbopotId2ld7zZAzRfz9j1g==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-replace-supers": "^7.19.1", + "@babel/helper-split-export-declaration": "^7.18.6", + "globals": "^11.1.0" + }, + "dependencies": { + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" + } + } + }, + "@babel/plugin-transform-computed-properties": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.18.9.tgz", + "integrity": "sha512-+i0ZU1bCDymKakLxn5srGHrsAPRELC2WIbzwjLhHW9SIE1cPYkLCL0NlnXMZaM1vhfgA2+M7hySk42VBvrkBRw==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-destructuring": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.2.tgz", + "integrity": "sha512-mENM+ZHrvEgxLTBXUiQ621rRXZes3KWUv6NdQlrnr1TkWVw+hUjQBZuP2X32qKlrlG2BzgR95gkuCRSkJl8vIw==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-dotall-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", + "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-duplicate-keys": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", + "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-exponentiation-operator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", + "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", + "requires": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-flow-strip-types": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.19.0.tgz", + "integrity": "sha512-sgeMlNaQVbCSpgLSKP4ZZKfsJVnFnNQlUSk6gPYzR/q7tzCgQF2t8RBKAP6cKJeZdveei7Q7Jm527xepI8lNLg==", + "requires": { + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/plugin-syntax-flow": "^7.18.6" + } + }, + "@babel/plugin-transform-for-of": { + "version": "7.18.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz", + "integrity": "sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-function-name": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", + "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", + "requires": { + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-function-name": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-literals": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", + "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-member-expression-literals": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", + "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-modules-amd": { + "version": "7.19.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.19.6.tgz", + "integrity": "sha512-uG3od2mXvAtIFQIh0xrpLH6r5fpSQN04gIVovl+ODLdUMANokxQLZnPBHcjmv3GxRjnqwLuHvppjjcelqUFZvg==", + "requires": { + "@babel/helper-module-transforms": "^7.19.6", + "@babel/helper-plugin-utils": "^7.19.0" + } + }, + "@babel/plugin-transform-modules-commonjs": { + "version": "7.19.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.19.6.tgz", + "integrity": "sha512-8PIa1ym4XRTKuSsOUXqDG0YaOlEuTVvHMe5JCfgBMOtHvJKw/4NGovEGN33viISshG/rZNVrACiBmPQLvWN8xQ==", + "requires": { + "@babel/helper-module-transforms": "^7.19.6", + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/helper-simple-access": "^7.19.4" + } + }, + "@babel/plugin-transform-modules-systemjs": { + "version": "7.19.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.19.6.tgz", + "integrity": "sha512-fqGLBepcc3kErfR9R3DnVpURmckXP7gj7bAlrTQyBxrigFqszZCkFkcoxzCp2v32XmwXLvbw+8Yq9/b+QqksjQ==", + "requires": { + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-module-transforms": "^7.19.6", + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/helper-validator-identifier": "^7.19.1" + } + }, + "@babel/plugin-transform-modules-umd": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", + "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", + "requires": { + "@babel/helper-module-transforms": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.19.1.tgz", + "integrity": "sha512-oWk9l9WItWBQYS4FgXD4Uyy5kq898lvkXpXQxoJEY1RnvPk4R/Dvu2ebXU9q8lP+rlMwUQTFf2Ok6d78ODa0kw==", + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.19.0", + "@babel/helper-plugin-utils": "^7.19.0" + } + }, + "@babel/plugin-transform-new-target": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", + "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-object-super": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", + "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-replace-supers": "^7.18.6" + } + }, + "@babel/plugin-transform-parameters": { + "version": "7.20.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.20.3.tgz", + "integrity": "sha512-oZg/Fpx0YDrj13KsLyO8I/CX3Zdw7z0O9qOd95SqcoIzuqy/WTGWvePeHAnZCN54SfdyjHcb1S30gc8zlzlHcA==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-property-literals": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", + "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-react-constant-elements": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.20.2.tgz", + "integrity": "sha512-KS/G8YI8uwMGKErLFOHS/ekhqdHhpEloxs43NecQHVgo2QuQSyJhGIY1fL8UGl9wy5ItVwwoUL4YxVqsplGq2g==", + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-react-display-name": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz", + "integrity": "sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-react-jsx": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.19.0.tgz", + "integrity": "sha512-UVEvX3tXie3Szm3emi1+G63jyw1w5IcMY0FSKM+CRnKRI5Mr1YbCNgsSTwoTwKphQEG9P+QqmuRFneJPZuHNhg==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/plugin-syntax-jsx": "^7.18.6", + "@babel/types": "^7.19.0" + } + }, + "@babel/plugin-transform-react-jsx-development": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.18.6.tgz", + "integrity": "sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA==", + "requires": { + "@babel/plugin-transform-react-jsx": "^7.18.6" + } + }, + "@babel/plugin-transform-react-pure-annotations": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.18.6.tgz", + "integrity": "sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-regenerator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.6.tgz", + "integrity": "sha512-poqRI2+qiSdeldcz4wTSTXBRryoq3Gc70ye7m7UD5Ww0nE29IXqMl6r7Nd15WBgRd74vloEMlShtH6CKxVzfmQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "regenerator-transform": "^0.15.0" + } + }, + "@babel/plugin-transform-reserved-words": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", + "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-runtime": { + "version": "7.19.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.19.6.tgz", + "integrity": "sha512-PRH37lz4JU156lYFW1p8OxE5i7d6Sl/zV58ooyr+q1J1lnQPyg5tIiXlIwNVhJaY4W3TmOtdc8jqdXQcB1v5Yw==", + "requires": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.19.0", + "babel-plugin-polyfill-corejs2": "^0.3.3", + "babel-plugin-polyfill-corejs3": "^0.6.0", + "babel-plugin-polyfill-regenerator": "^0.4.1", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "@babel/plugin-transform-shorthand-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", + "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-spread": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.19.0.tgz", + "integrity": "sha512-RsuMk7j6n+r752EtzyScnWkQyuJdli6LdO5Klv8Yx0OfPVTcQkIUfS8clx5e9yHXzlnhOZF3CbQ8C2uP5j074w==", + "requires": { + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9" + } + }, + "@babel/plugin-transform-sticky-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", + "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-template-literals": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", + "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-typeof-symbol": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", + "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-typescript": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.20.2.tgz", + "integrity": "sha512-jvS+ngBfrnTUBfOQq8NfGnSbF9BrqlR6hjJ2yVxMkmO5nL/cdifNbI30EfjRlN4g5wYWNnMPyj5Sa6R1pbLeag==", + "requires": { + "@babel/helper-create-class-features-plugin": "^7.20.2", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-typescript": "^7.20.0" + } + }, + "@babel/plugin-transform-unicode-escapes": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", + "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-unicode-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", + "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/preset-env": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.20.2.tgz", + "integrity": "sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg==", + "requires": { + "@babel/compat-data": "^7.20.1", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-async-generator-functions": "^7.20.1", + "@babel/plugin-proposal-class-properties": "^7.18.6", + "@babel/plugin-proposal-class-static-block": "^7.18.6", + "@babel/plugin-proposal-dynamic-import": "^7.18.6", + "@babel/plugin-proposal-export-namespace-from": "^7.18.9", + "@babel/plugin-proposal-json-strings": "^7.18.6", + "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", + "@babel/plugin-proposal-numeric-separator": "^7.18.6", + "@babel/plugin-proposal-object-rest-spread": "^7.20.2", + "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", + "@babel/plugin-proposal-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-private-methods": "^7.18.6", + "@babel/plugin-proposal-private-property-in-object": "^7.18.6", + "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.20.0", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.18.6", + "@babel/plugin-transform-async-to-generator": "^7.18.6", + "@babel/plugin-transform-block-scoped-functions": "^7.18.6", + "@babel/plugin-transform-block-scoping": "^7.20.2", + "@babel/plugin-transform-classes": "^7.20.2", + "@babel/plugin-transform-computed-properties": "^7.18.9", + "@babel/plugin-transform-destructuring": "^7.20.2", + "@babel/plugin-transform-dotall-regex": "^7.18.6", + "@babel/plugin-transform-duplicate-keys": "^7.18.9", + "@babel/plugin-transform-exponentiation-operator": "^7.18.6", + "@babel/plugin-transform-for-of": "^7.18.8", + "@babel/plugin-transform-function-name": "^7.18.9", + "@babel/plugin-transform-literals": "^7.18.9", + "@babel/plugin-transform-member-expression-literals": "^7.18.6", + "@babel/plugin-transform-modules-amd": "^7.19.6", + "@babel/plugin-transform-modules-commonjs": "^7.19.6", + "@babel/plugin-transform-modules-systemjs": "^7.19.6", + "@babel/plugin-transform-modules-umd": "^7.18.6", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.19.1", + "@babel/plugin-transform-new-target": "^7.18.6", + "@babel/plugin-transform-object-super": "^7.18.6", + "@babel/plugin-transform-parameters": "^7.20.1", + "@babel/plugin-transform-property-literals": "^7.18.6", + "@babel/plugin-transform-regenerator": "^7.18.6", + "@babel/plugin-transform-reserved-words": "^7.18.6", + "@babel/plugin-transform-shorthand-properties": "^7.18.6", + "@babel/plugin-transform-spread": "^7.19.0", + "@babel/plugin-transform-sticky-regex": "^7.18.6", + "@babel/plugin-transform-template-literals": "^7.18.9", + "@babel/plugin-transform-typeof-symbol": "^7.18.9", + "@babel/plugin-transform-unicode-escapes": "^7.18.10", + "@babel/plugin-transform-unicode-regex": "^7.18.6", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.20.2", + "babel-plugin-polyfill-corejs2": "^0.3.3", + "babel-plugin-polyfill-corejs3": "^0.6.0", + "babel-plugin-polyfill-regenerator": "^0.4.1", + "core-js-compat": "^3.25.1", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + } + }, + "@babel/preset-react": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.18.6.tgz", + "integrity": "sha512-zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-transform-react-display-name": "^7.18.6", + "@babel/plugin-transform-react-jsx": "^7.18.6", + "@babel/plugin-transform-react-jsx-development": "^7.18.6", + "@babel/plugin-transform-react-pure-annotations": "^7.18.6" + } + }, + "@babel/preset-typescript": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.18.6.tgz", + "integrity": "sha512-s9ik86kXBAnD760aybBucdpnLsAt0jK1xqJn2juOn9lkOvSHV60os5hxoVJsPzMQxvnUJFAlkont2DvvaYEBtQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-transform-typescript": "^7.18.6" + } + }, + "@babel/runtime": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.1.tgz", + "integrity": "sha512-mrzLkl6U9YLF8qpqI7TB82PESyEGjm/0Ly91jG575eVxMMlb8fYfOXFZIJ8XfLrJZQbm7dlKry2bJmXBUEkdFg==", + "requires": { + "regenerator-runtime": "^0.13.10" + } + }, + "@babel/runtime-corejs3": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.20.1.tgz", + "integrity": "sha512-CGulbEDcg/ND1Im7fUNRZdGXmX2MTWVVZacQi/6DiKE5HNwZ3aVTm5PV4lO8HHz0B2h8WQyvKKjbX5XgTtydsg==", + "requires": { + "core-js-pure": "^3.25.1", + "regenerator-runtime": "^0.13.10" + } + }, + "@babel/template": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", + "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", + "requires": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.18.10", + "@babel/types": "^7.18.10" + } + }, + "@babel/traverse": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.1.tgz", + "integrity": "sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==", + "requires": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.1", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.20.1", + "@babel/types": "^7.20.0", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "dependencies": { + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" + } + } + }, + "@babel/types": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.2.tgz", + "integrity": "sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==", + "requires": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + } + }, + "@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==" + }, + "@cnakazawa/watch": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.4.tgz", + "integrity": "sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ==", + "requires": { + "exec-sh": "^0.3.2", + "minimist": "^1.2.0" + } + }, + "@csstools/convert-colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@csstools/convert-colors/-/convert-colors-1.4.0.tgz", + "integrity": "sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw==" + }, + "@csstools/normalize.css": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/@csstools/normalize.css/-/normalize.css-10.1.0.tgz", + "integrity": "sha512-ij4wRiunFfaJxjB0BdrYHIH8FxBJpOwNPhhAcunlmPdXudL1WQV1qoP9un6JsEBAgQH+7UXyyjh0g7jTxXK6tg==" + }, + "@eslint/eslintrc": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.2.2.tgz", + "integrity": "sha512-EfB5OHNYp1F4px/LI/FEnGylop7nOqkQ1LRzCM0KccA2U8tvV8w01KBv37LbO7nW4H+YhKyo2LcJhRwjjV17QQ==", + "requires": { + "ajv": "^6.12.4", + "debug": "^4.1.1", + "espree": "^7.3.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^3.13.1", + "lodash": "^4.17.19", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + }, + "dependencies": { + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==" + } + } + }, + "@gar/promisify": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==" + }, + "@hapi/address": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@hapi/address/-/address-2.1.4.tgz", + "integrity": "sha512-QD1PhQk+s31P1ixsX0H0Suoupp3VMXzIVMSwobR3F3MSUO2YCV0B7xqLcUw/Bh8yuvd3LhpyqLQWTNcRmp6IdQ==" + }, + "@hapi/bourne": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@hapi/bourne/-/bourne-1.3.2.tgz", + "integrity": "sha512-1dVNHT76Uu5N3eJNTYcvxee+jzX4Z9lfciqRRHCU27ihbUcYi+iSc2iml5Ke1LXe1SyJCLA0+14Jh4tXJgOppA==" + }, + "@hapi/hoek": { + "version": "8.5.1", + "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-8.5.1.tgz", + "integrity": "sha512-yN7kbciD87WzLGc5539Tn0sApjyiGHAJgKvG9W8C7O+6c7qmoQMfVs0W4bX17eqz6C78QJqqFrtgdK5EWf6Qow==" + }, + "@hapi/joi": { + "version": "15.1.1", + "resolved": "https://registry.npmjs.org/@hapi/joi/-/joi-15.1.1.tgz", + "integrity": "sha512-entf8ZMOK8sc+8YfeOlM8pCfg3b5+WZIKBfUaaJT8UsjAAPjartzxIYm3TIbjvA4u+u++KbcXD38k682nVHDAQ==", + "requires": { + "@hapi/address": "2.x.x", + "@hapi/bourne": "1.x.x", + "@hapi/hoek": "8.x.x", + "@hapi/topo": "3.x.x" + } + }, + "@hapi/topo": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-3.1.6.tgz", + "integrity": "sha512-tAag0jEcjwH+P2quUfipd7liWCNX2F8NvYjQp2wtInsZxnMlypdw0FtAOLxtvvkO+GSRRbmNi8m/5y42PQJYCQ==", + "requires": { + "@hapi/hoek": "^8.3.0" + } + }, + "@hipo/eslint-config-base": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@hipo/eslint-config-base/-/eslint-config-base-4.2.1.tgz", + "integrity": "sha512-Mp+b27lqwuX6aSkVxr8OzxvinPRs4EOKnNPBHFhVrRv4vwZ1TaDTLaltpGAAfVUnYjyoofIE+e75rJqpu24sGA==", + "dev": true, + "requires": {} + }, + "@hipo/eslint-config-react": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@hipo/eslint-config-react/-/eslint-config-react-2.3.0.tgz", + "integrity": "sha512-MOw92/06fwqJTxWQZ8kMBFu5zqEebOF2vsIWBCsm2ZwdCEX34bl1VycRJ3v2HD3TDLmwSoYO51WaJq69tt9I6Q==", + "dev": true, + "requires": {} + }, + "@hipo/eslint-config-typescript": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@hipo/eslint-config-typescript/-/eslint-config-typescript-1.2.0.tgz", + "integrity": "sha512-L5yQxw84LE8H+x4vJAulde1AlxWSzwMPmPgJU64AHtV+MQGZASn4JOXHWAJ+/BwvyRCFUCEZpbkgwzoOfZ9v4Q==", + "dev": true, + "requires": {} + }, + "@hipo/react-ui-toolkit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@hipo/react-ui-toolkit/-/react-ui-toolkit-1.0.1.tgz", + "integrity": "sha512-CIuOt3SEmRkcQSfvFdiHBkcPEbdaOgHPkv6lhYdW3XKPgmZWyUoEwoRTbjimUke6MXVfJT1muotjrK3RVzBFzg==", + "requires": { + "classnames": "2.3.1", + "date-fns": "2.28.0", + "date-fns-tz": "1.3.3", + "react-textarea-autosize": "8.3.2", + "uuid": "8.3.2" + }, + "dependencies": { + "classnames": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.1.tgz", + "integrity": "sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA==" + }, + "date-fns": { + "version": "2.28.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.28.0.tgz", + "integrity": "sha512-8d35hViGYx/QH0icHYCeLmsLmMUheMmTyV9Fcm6gvNwdw31yXXH+O85sOBJ+OLnLQMKZowvpKb6FgMIQjcpvQw==" + }, + "date-fns-tz": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/date-fns-tz/-/date-fns-tz-1.3.3.tgz", + "integrity": "sha512-Gks46gwbSauBQnV3Oofluj1wTm8J0tM7sbSJ9P+cJq/ZnTCpMohTKmmO5Tn+jQ7dyn0+b8G7cY4O2DZ5P/LXcA==", + "requires": {} + } + } + }, + "@hipo/stylelint-config-base": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@hipo/stylelint-config-base/-/stylelint-config-base-3.2.0.tgz", + "integrity": "sha512-IDr2rb7YEky/xu9DR156ZXmH89WT1TO2OLmWHmpqaGL3QfZbNbsgzaNaSH9hHnB3NiwvpFivzxmE8HVllo78FA==", + "dev": true, + "requires": { + "stylelint-config-standard-scss": "^3.0.0" + } + }, + "@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "requires": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "dependencies": { + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" + }, + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==" + } + } + }, + "@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==" + }, + "@jest/console": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-26.6.2.tgz", + "integrity": "sha512-IY1R2i2aLsLr7Id3S6p2BA82GNWryt4oSvEXLAKc+L2zdi89dSkE8xC1C+0kpATG4JhBJREnQOH7/zmccM2B0g==", + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^26.6.2", + "jest-util": "^26.6.2", + "slash": "^3.0.0" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "requires": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + } + }, + "jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + } + }, + "pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "requires": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + } + } + }, + "@jest/core": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-26.6.3.tgz", + "integrity": "sha512-xvV1kKbhfUqFVuZ8Cyo+JPpipAHHAV3kcDBftiduK8EICXmTFddryy3P7NfZt8Pv37rA9nEJBKCCkglCPt/Xjw==", + "requires": { + "@jest/console": "^26.6.2", + "@jest/reporters": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.4", + "jest-changed-files": "^26.6.2", + "jest-config": "^26.6.3", + "jest-haste-map": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-resolve": "^26.6.2", + "jest-resolve-dependencies": "^26.6.3", + "jest-runner": "^26.6.3", + "jest-runtime": "^26.6.3", + "jest-snapshot": "^26.6.2", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "jest-watcher": "^26.6.2", + "micromatch": "^4.0.2", + "p-each-series": "^2.1.0", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "requires": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + } + }, + "jest-resolve": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.6.2.tgz", + "integrity": "sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ==", + "requires": { + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^26.6.2", + "read-pkg-up": "^7.0.1", + "resolve": "^1.18.1", + "slash": "^3.0.0" + } + }, + "jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + } + }, + "pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "requires": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + } + } + }, + "@jest/environment": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-26.6.2.tgz", + "integrity": "sha512-nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA==", + "requires": { + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + } + } + }, + "@jest/expect-utils": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.3.1.tgz", + "integrity": "sha512-wlrznINZI5sMjwvUoLVk617ll/UYfGIZNxmbU+Pa7wmkL4vYzhV9R2pwVqUh4NWWuLQWkI8+8mOkxs//prKQ3g==", + "dev": true, + "requires": { + "jest-get-type": "^29.2.0" + } + }, + "@jest/fake-timers": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-26.6.2.tgz", + "integrity": "sha512-14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA==", + "requires": { + "@jest/types": "^26.6.2", + "@sinonjs/fake-timers": "^6.0.1", + "@types/node": "*", + "jest-message-util": "^26.6.2", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "requires": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + } + }, + "jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + } + }, + "pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "requires": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + } + } + }, + "@jest/globals": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-26.6.2.tgz", + "integrity": "sha512-85Ltnm7HlB/KesBUuALwQ68YTU72w9H2xW9FjZ1eL1U3lhtefjjl5c2MiUbpXt/i6LaPRvoOFJ22yCBSfQ0JIA==", + "requires": { + "@jest/environment": "^26.6.2", + "@jest/types": "^26.6.2", + "expect": "^26.6.2" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "diff-sequences": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz", + "integrity": "sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==" + }, + "expect": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/expect/-/expect-26.6.2.tgz", + "integrity": "sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA==", + "requires": { + "@jest/types": "^26.6.2", + "ansi-styles": "^4.0.0", + "jest-get-type": "^26.3.0", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-regex-util": "^26.0.0" + } + }, + "jest-diff": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz", + "integrity": "sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==", + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + } + }, + "jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==" + }, + "jest-matcher-utils": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz", + "integrity": "sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw==", + "requires": { + "chalk": "^4.0.0", + "jest-diff": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + } + }, + "jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "requires": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + } + }, + "pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "requires": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + } + } + }, + "@jest/reporters": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-26.6.2.tgz", + "integrity": "sha512-h2bW53APG4HvkOnVMo8q3QXa6pcaNt1HkwVsOPMBV6LD/q9oSpxNSYZQYkAnjdMjrJ86UuYeLo+aEZClV6opnw==", + "requires": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.2.4", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^4.0.3", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.0.2", + "jest-haste-map": "^26.6.2", + "jest-resolve": "^26.6.2", + "jest-util": "^26.6.2", + "jest-worker": "^26.6.2", + "node-notifier": "^8.0.0", + "slash": "^3.0.0", + "source-map": "^0.6.0", + "string-length": "^4.0.1", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^7.0.0" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "istanbul-lib-instrument": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", + "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", + "requires": { + "@babel/core": "^7.7.5", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.0.0", + "semver": "^6.3.0" + } + }, + "jest-resolve": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.6.2.tgz", + "integrity": "sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ==", + "requires": { + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^26.6.2", + "read-pkg-up": "^7.0.1", + "resolve": "^1.18.1", + "slash": "^3.0.0" + } + }, + "jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + } + }, + "jest-worker": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", + "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "@jest/schemas": { + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.0.0.tgz", + "integrity": "sha512-3Ab5HgYIIAnS0HjqJHQYZS+zXc4tUmTmBH3z83ajI6afXp8X3ZtdLX+nXx+I7LNkJD7uN9LAVhgnjDgZa2z0kA==", + "dev": true, + "requires": { + "@sinclair/typebox": "^0.24.1" + } + }, + "@jest/source-map": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-26.6.2.tgz", + "integrity": "sha512-YwYcCwAnNmOVsZ8mr3GfnzdXDAl4LaenZP5z+G0c8bzC9/dugL8zRmxZzdoTl4IaS3CryS1uWnROLPFmb6lVvA==", + "requires": { + "callsites": "^3.0.0", + "graceful-fs": "^4.2.4", + "source-map": "^0.6.0" + } + }, + "@jest/test-result": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-26.6.2.tgz", + "integrity": "sha512-5O7H5c/7YlojphYNrK02LlDIV2GNPYisKwHm2QTKjNZeEzezCbwYs9swJySv2UfPMyZ0VdsmMv7jIlD/IKYQpQ==", + "requires": { + "@jest/console": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + } + } + }, + "@jest/test-sequencer": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-26.6.3.tgz", + "integrity": "sha512-YHlVIjP5nfEyjlrSr8t/YdNfU/1XEt7c5b4OxcXCjyRhjzLYu/rO69/WHPuYcbCWkz8kAeZVZp2N2+IOLLEPGw==", + "requires": { + "@jest/test-result": "^26.6.2", + "graceful-fs": "^4.2.4", + "jest-haste-map": "^26.6.2", + "jest-runner": "^26.6.3", + "jest-runtime": "^26.6.3" + } + }, + "@jest/transform": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-26.6.2.tgz", + "integrity": "sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA==", + "requires": { + "@babel/core": "^7.1.0", + "@jest/types": "^26.6.2", + "babel-plugin-istanbul": "^6.0.0", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.4", + "jest-haste-map": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-util": "^26.6.2", + "micromatch": "^4.0.2", + "pirates": "^4.0.1", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + } + } + } + }, + "@jest/types": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.3.1.tgz", + "integrity": "sha512-d0S0jmmTpjnhCmNpApgX3jrUZgZ22ivKJRvL2lli5hpCRoNnp1f85r2/wpKfXuYu8E7Jjh1hGfhPyup1NM5AmA==", + "dev": true, + "requires": { + "@jest/schemas": "^29.0.0", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + } + }, + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==" + }, + "@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==" + }, + "@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "requires": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" + }, + "@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "requires": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "requires": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + } + }, + "@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==" + }, + "@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "requires": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + } + }, + "@npmcli/fs": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.1.tgz", + "integrity": "sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==", + "requires": { + "@gar/promisify": "^1.0.1", + "semver": "^7.3.5" + } + }, + "@npmcli/move-file": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz", + "integrity": "sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==", + "requires": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "dependencies": { + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" + } + } + }, + "@remix-run/router": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.0.3.tgz", + "integrity": "sha512-ceuyTSs7PZ/tQqi19YZNBc5X7kj1f8p+4DIyrcIYFY9h+hd1OKm4RqtiWldR9eGEvIiJfsqwM4BsuCtRIuEw6Q==" + }, + "@rollup/plugin-node-resolve": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-7.1.3.tgz", + "integrity": "sha512-RxtSL3XmdTAE2byxekYLnx+98kEUOrPHF/KRVjLH+DEIHy6kjIw7YINQzn+NXiH/NTrQLAwYs0GWB+csWygA9Q==", + "requires": { + "@rollup/pluginutils": "^3.0.8", + "@types/resolve": "0.0.8", + "builtin-modules": "^3.1.0", + "is-module": "^1.0.0", + "resolve": "^1.14.2" + } + }, + "@rollup/plugin-replace": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-2.4.2.tgz", + "integrity": "sha512-IGcu+cydlUMZ5En85jxHH4qj2hta/11BHq95iHEyb2sbgiN0eCdzvUcHw5gt9pBL5lTi4JDYJ1acCoMGpTvEZg==", + "requires": { + "@rollup/pluginutils": "^3.1.0", + "magic-string": "^0.25.7" + } + }, + "@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "requires": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "dependencies": { + "@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==" + } + } + }, + "@sinclair/typebox": { + "version": "0.24.51", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.51.tgz", + "integrity": "sha512-1P1OROm/rdubP5aFDSZQILU0vrLCJ4fvHt6EoqHEM+2D/G5MK3bIaymUKLit8Js9gbns5UyJnkP/TZROLw4tUA==", + "dev": true + }, + "@sinonjs/commons": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.5.tgz", + "integrity": "sha512-rTpCA0wG1wUxglBSFdMMY0oTrKYvgf4fNgv/sXbfCVAdf+FnPBdKJR/7XbpTCwbCrvCbdPYnlWaUUYz4V2fPDA==", + "requires": { + "type-detect": "4.0.8" + } + }, + "@sinonjs/fake-timers": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz", + "integrity": "sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA==", + "requires": { + "@sinonjs/commons": "^1.7.0" + } + }, + "@surma/rollup-plugin-off-main-thread": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@surma/rollup-plugin-off-main-thread/-/rollup-plugin-off-main-thread-1.4.2.tgz", + "integrity": "sha512-yBMPqmd1yEJo/280PAMkychuaALyQ9Lkb5q1ck3mjJrFuEobIfhnQ4J3mbvBoISmR3SWMWV+cGB/I0lCQee79A==", + "requires": { + "ejs": "^2.6.1", + "magic-string": "^0.25.0" + } + }, + "@svgr/babel-plugin-add-jsx-attribute": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-5.4.0.tgz", + "integrity": "sha512-ZFf2gs/8/6B8PnSofI0inYXr2SDNTDScPXhN7k5EqD4aZ3gi6u+rbmZHVB8IM3wDyx8ntKACZbtXSm7oZGRqVg==" + }, + "@svgr/babel-plugin-remove-jsx-attribute": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-5.4.0.tgz", + "integrity": "sha512-yaS4o2PgUtwLFGTKbsiAy6D0o3ugcUhWK0Z45umJ66EPWunAz9fuFw2gJuje6wqQvQWOTJvIahUwndOXb7QCPg==" + }, + "@svgr/babel-plugin-remove-jsx-empty-expression": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-5.0.1.tgz", + "integrity": "sha512-LA72+88A11ND/yFIMzyuLRSMJ+tRKeYKeQ+mR3DcAZ5I4h5CPWN9AHyUzJbWSYp/u2u0xhmgOe0+E41+GjEueA==" + }, + "@svgr/babel-plugin-replace-jsx-attribute-value": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-5.0.1.tgz", + "integrity": "sha512-PoiE6ZD2Eiy5mK+fjHqwGOS+IXX0wq/YDtNyIgOrc6ejFnxN4b13pRpiIPbtPwHEc+NT2KCjteAcq33/F1Y9KQ==" + }, + "@svgr/babel-plugin-svg-dynamic-title": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-5.4.0.tgz", + "integrity": "sha512-zSOZH8PdZOpuG1ZVx/cLVePB2ibo3WPpqo7gFIjLV9a0QsuQAzJiwwqmuEdTaW2pegyBE17Uu15mOgOcgabQZg==" + }, + "@svgr/babel-plugin-svg-em-dimensions": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-5.4.0.tgz", + "integrity": "sha512-cPzDbDA5oT/sPXDCUYoVXEmm3VIoAWAPT6mSPTJNbQaBNUuEKVKyGH93oDY4e42PYHRW67N5alJx/eEol20abw==" + }, + "@svgr/babel-plugin-transform-react-native-svg": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-5.4.0.tgz", + "integrity": "sha512-3eYP/SaopZ41GHwXma7Rmxcv9uRslRDTY1estspeB1w1ueZWd/tPlMfEOoccYpEMZU3jD4OU7YitnXcF5hLW2Q==" + }, + "@svgr/babel-plugin-transform-svg-component": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-5.5.0.tgz", + "integrity": "sha512-q4jSH1UUvbrsOtlo/tKcgSeiCHRSBdXoIoqX1pgcKK/aU3JD27wmMKwGtpB8qRYUYoyXvfGxUVKchLuR5pB3rQ==" + }, + "@svgr/babel-preset": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-5.5.0.tgz", + "integrity": "sha512-4FiXBjvQ+z2j7yASeGPEi8VD/5rrGQk4Xrq3EdJmoZgz/tpqChpo5hgXDvmEauwtvOc52q8ghhZK4Oy7qph4ig==", + "requires": { + "@svgr/babel-plugin-add-jsx-attribute": "^5.4.0", + "@svgr/babel-plugin-remove-jsx-attribute": "^5.4.0", + "@svgr/babel-plugin-remove-jsx-empty-expression": "^5.0.1", + "@svgr/babel-plugin-replace-jsx-attribute-value": "^5.0.1", + "@svgr/babel-plugin-svg-dynamic-title": "^5.4.0", + "@svgr/babel-plugin-svg-em-dimensions": "^5.4.0", + "@svgr/babel-plugin-transform-react-native-svg": "^5.4.0", + "@svgr/babel-plugin-transform-svg-component": "^5.5.0" + } + }, + "@svgr/core": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@svgr/core/-/core-5.5.0.tgz", + "integrity": "sha512-q52VOcsJPvV3jO1wkPtzTuKlvX7Y3xIcWRpCMtBF3MrteZJtBfQw/+u0B1BHy5ColpQc1/YVTrPEtSYIMNZlrQ==", + "requires": { + "@svgr/plugin-jsx": "^5.5.0", + "camelcase": "^6.2.0", + "cosmiconfig": "^7.0.0" + } + }, + "@svgr/hast-util-to-babel-ast": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-5.5.0.tgz", + "integrity": "sha512-cAaR/CAiZRB8GP32N+1jocovUtvlj0+e65TB50/6Lcime+EA49m/8l+P2ko+XPJ4dw3xaPS3jOL4F2X4KWxoeQ==", + "requires": { + "@babel/types": "^7.12.6" + } + }, + "@svgr/plugin-jsx": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-5.5.0.tgz", + "integrity": "sha512-V/wVh33j12hGh05IDg8GpIUXbjAPnTdPTKuP4VNLggnwaHMPNQNae2pRnyTAILWCQdz5GyMqtO488g7CKM8CBA==", + "requires": { + "@babel/core": "^7.12.3", + "@svgr/babel-preset": "^5.5.0", + "@svgr/hast-util-to-babel-ast": "^5.5.0", + "svg-parser": "^2.0.2" + } + }, + "@svgr/plugin-svgo": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-5.5.0.tgz", + "integrity": "sha512-r5swKk46GuQl4RrVejVwpeeJaydoxkdwkM1mBKOgJLBUJPGaLci6ylg/IjhrRsREKDkr4kbMWdgOtbXEh0fyLQ==", + "requires": { + "cosmiconfig": "^7.0.0", + "deepmerge": "^4.2.2", + "svgo": "^1.2.2" + } + }, + "@svgr/webpack": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-5.5.0.tgz", + "integrity": "sha512-DOBOK255wfQxguUta2INKkzPj6AIS6iafZYiYmHn6W3pHlycSRRlvWKCfLDG10fXfLWqE3DJHgRUOyJYmARa7g==", + "requires": { + "@babel/core": "^7.12.3", + "@babel/plugin-transform-react-constant-elements": "^7.12.1", + "@babel/preset-env": "^7.12.1", + "@babel/preset-react": "^7.12.5", + "@svgr/core": "^5.5.0", + "@svgr/plugin-jsx": "^5.5.0", + "@svgr/plugin-svgo": "^5.5.0", + "loader-utils": "^2.0.0" + } + }, + "@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==" + }, + "@types/babel__core": { + "version": "7.1.20", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.20.tgz", + "integrity": "sha512-PVb6Bg2QuscZ30FvOU7z4guG6c926D9YRvOxEaelzndpMsvP+YM74Q/dAFASpg2l6+XLalxSGxcq/lrgYWZtyQ==", + "requires": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "@types/babel__generator": { + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", + "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@types/babel__template": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", + "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "requires": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@types/babel__traverse": { + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.2.tgz", + "integrity": "sha512-FcFaxOr2V5KZCviw1TnutEMVUVsGt4D2hP1TAfXZAMKuHYW3xQhe3jTxNPWutgCJ3/X1c5yX8ZoGVEItxKbwBg==", + "requires": { + "@babel/types": "^7.3.0" + } + }, + "@types/eslint": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.29.0.tgz", + "integrity": "sha512-VNcvioYDH8/FxaeTKkM4/TiTwt6pBV9E3OfGmvaw8tPl0rrHCJ4Ll15HRT+pMiFAf/MLQvAzC+6RzUMEL9Ceng==", + "requires": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "@types/estree": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.0.tgz", + "integrity": "sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==" + }, + "@types/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", + "requires": { + "@types/minimatch": "*", + "@types/node": "*" + } + }, + "@types/graceful-fs": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz", + "integrity": "sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==", + "requires": { + "@types/node": "*" + } + }, + "@types/history": { + "version": "4.7.11", + "resolved": "https://registry.npmjs.org/@types/history/-/history-4.7.11.tgz", + "integrity": "sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==", + "dev": true + }, + "@types/html-minifier-terser": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-5.1.2.tgz", + "integrity": "sha512-h4lTMgMJctJybDp8CQrxTUiiYmedihHWkjnF/8Pxseu2S6Nlfcy8kwboQ8yejh456rP2yWoEVm1sS/FVsfM48w==" + }, + "@types/istanbul-lib-coverage": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==" + }, + "@types/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "requires": { + "@types/istanbul-lib-coverage": "*" + } + }, + "@types/istanbul-reports": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", + "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", + "requires": { + "@types/istanbul-lib-report": "*" + } + }, + "@types/jest": { + "version": "29.2.3", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.2.3.tgz", + "integrity": "sha512-6XwoEbmatfyoCjWRX7z0fKMmgYKe9+/HrviJ5k0X/tjJWHGAezZOfYaxqQKuzG/TvQyr+ktjm4jgbk0s4/oF2w==", + "dev": true, + "requires": { + "expect": "^29.0.0", + "pretty-format": "^29.0.0" + } + }, + "@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==" + }, + "@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==" + }, + "@types/minimatch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", + "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==" + }, + "@types/minimist": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz", + "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==", + "dev": true + }, + "@types/node": { + "version": "16.11.36", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.36.tgz", + "integrity": "sha512-FR5QJe+TaoZ2GsMHkjuwoNabr+UrJNRr2HNOo+r/7vhcuntM6Ee/pRPOnRhhL2XE9OOvX9VLEq+BcXl3VjNoWA==" + }, + "@types/normalize-package-data": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", + "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==" + }, + "@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==" + }, + "@types/prettier": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.1.tgz", + "integrity": "sha512-ri0UmynRRvZiiUJdiz38MmIblKK+oH30MztdBVR95dv/Ubw6neWSb8u1XpRb72L4qsZOhz+L+z9JD40SJmfWow==" + }, + "@types/prop-types": { + "version": "15.7.5", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", + "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==", + "dev": true + }, + "@types/q": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.5.tgz", + "integrity": "sha512-L28j2FcJfSZOnL1WBjDYp2vUHCeIFlyYI/53EwD/rKUBQ7MtUUfbQWiyKJGpcnv4/WgrhWsFKrcPstcAt/J0tQ==" + }, + "@types/react": { + "version": "17.0.45", + "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.45.tgz", + "integrity": "sha512-YfhQ22Lah2e3CHPsb93tRwIGNiSwkuz1/blk4e6QrWS0jQzCSNbGLtOEYhPg02W0yGTTmpajp7dCTbBAMN3qsg==", + "dev": true, + "requires": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "@types/react-dom": { + "version": "17.0.17", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.17.tgz", + "integrity": "sha512-VjnqEmqGnasQKV0CWLevqMTXBYG9GbwuE6x3VetERLh0cq2LTptFE73MrQi2S7GkKXCf2GgwItB/melLnxfnsg==", + "dev": true, + "requires": { + "@types/react": "^17" + } + }, + "@types/react-modal": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/@types/react-modal/-/react-modal-3.13.1.tgz", + "integrity": "sha512-iY/gPvTDIy6Z+37l+ibmrY+GTV4KQTHcCyR5FIytm182RQS69G5ps4PH2FxtC7bAQ2QRHXMevsBgck7IQruHNg==", + "dev": true, + "requires": { + "@types/react": "*" + } + }, + "@types/react-router": { + "version": "5.1.19", + "resolved": "https://registry.npmjs.org/@types/react-router/-/react-router-5.1.19.tgz", + "integrity": "sha512-Fv/5kb2STAEMT3wHzdKQK2z8xKq38EDIGVrutYLmQVVLe+4orDFquU52hQrULnEHinMKv9FSA6lf9+uNT1ITtA==", + "dev": true, + "requires": { + "@types/history": "^4.7.11", + "@types/react": "*" + } + }, + "@types/react-router-dom": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/@types/react-router-dom/-/react-router-dom-5.3.3.tgz", + "integrity": "sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==", + "dev": true, + "requires": { + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router": "*" + } + }, + "@types/resolve": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-0.0.8.tgz", + "integrity": "sha512-auApPaJf3NPfe18hSoJkp8EbZzer2ISk7o8mCC3M9he/a04+gbMF97NkpD2S8riMGvm4BMRI59/SZQSaLTKpsQ==", + "requires": { + "@types/node": "*" + } + }, + "@types/scheduler": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", + "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==", + "dev": true + }, + "@types/scrypt-async": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@types/scrypt-async/-/scrypt-async-1.3.2.tgz", + "integrity": "sha512-vmS6xSNOKCNAbtrRATbcbSbI0rGfG9ciKclMJ5H1o67LcmAqxiwA1tNYE+yLpTdD8K0LSFwu2kU9UajO3pDegQ==", + "dev": true + }, + "@types/semver": { + "version": "7.3.13", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", + "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", + "devOptional": true, + "peer": true + }, + "@types/source-list-map": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", + "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==" + }, + "@types/stack-utils": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", + "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==" + }, + "@types/tapable": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.8.tgz", + "integrity": "sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ==" + }, + "@types/uglify-js": { + "version": "3.17.1", + "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.17.1.tgz", + "integrity": "sha512-GkewRA4i5oXacU/n4MA9+bLgt5/L3F1mKrYvFGm7r2ouLXhRKjuWwo9XHNnbx6WF3vlGW21S3fCvgqxvxXXc5g==", + "requires": { + "source-map": "^0.6.1" + } + }, + "@types/webfontloader": { + "version": "1.6.35", + "resolved": "https://registry.npmjs.org/@types/webfontloader/-/webfontloader-1.6.35.tgz", + "integrity": "sha512-IJlrsiDWq6KghQ7tPlL5tcwSUyOxLDceT+AFUY7Ylj0Fcv3/h3QkANqQxZ0B5mEpEKxhTw76vDmvrruSMV9n9Q==", + "dev": true + }, + "@types/webpack": { + "version": "4.41.33", + "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.33.tgz", + "integrity": "sha512-PPajH64Ft2vWevkerISMtnZ8rTs4YmRbs+23c402J0INmxDKCrhZNvwZYtzx96gY2wAtXdrK1BS2fiC8MlLr3g==", + "requires": { + "@types/node": "*", + "@types/tapable": "^1", + "@types/uglify-js": "*", + "@types/webpack-sources": "*", + "anymatch": "^3.0.0", + "source-map": "^0.6.0" + } + }, + "@types/webpack-sources": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-3.2.0.tgz", + "integrity": "sha512-Ft7YH3lEVRQ6ls8k4Ff1oB4jN6oy/XmU6tQISKdhfh+1mR+viZFphS6WL0IrtDOzvefmJg5a0s7ZQoRXwqTEFg==", + "requires": { + "@types/node": "*", + "@types/source-list-map": "*", + "source-map": "^0.7.3" + }, + "dependencies": { + "source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==" + } + } + }, + "@types/yargs": { + "version": "17.0.13", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.13.tgz", + "integrity": "sha512-9sWaruZk2JGxIQU+IhI1fhPYRcQ0UuTNuKuCW9bR5fp7qi2Llf7WDzNa17Cy7TKnh3cdxDOiyTu6gaLS0eDatg==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "@types/yargs-parser": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", + "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==" + }, + "@typescript-eslint/eslint-plugin": { + "version": "5.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.43.0.tgz", + "integrity": "sha512-wNPzG+eDR6+hhW4yobEmpR36jrqqQv1vxBq5LJO3fBAktjkvekfr4BRl+3Fn1CM/A+s8/EiGUbOMDoYqWdbtXA==", + "devOptional": true, + "peer": true, + "requires": { + "@typescript-eslint/scope-manager": "5.43.0", + "@typescript-eslint/type-utils": "5.43.0", + "@typescript-eslint/utils": "5.43.0", + "debug": "^4.3.4", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "regexpp": "^3.2.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/experimental-utils": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.33.0.tgz", + "integrity": "sha512-zeQjOoES5JFjTnAhI5QY7ZviczMzDptls15GFsI6jyUOq0kOf9+WonkhtlIhh0RgHRnqj5gdNxW5j1EvAyYg6Q==", + "requires": { + "@types/json-schema": "^7.0.7", + "@typescript-eslint/scope-manager": "4.33.0", + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/typescript-estree": "4.33.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0" + }, + "dependencies": { + "@typescript-eslint/scope-manager": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.33.0.tgz", + "integrity": "sha512-5IfJHpgTsTZuONKbODctL4kKuQje/bzBRkwHE8UOZ4f89Zeddg+EGZs8PD8NcN4LdM3ygHWYB3ukPAYjvl/qbQ==", + "requires": { + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/visitor-keys": "4.33.0" + } + }, + "@typescript-eslint/types": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.33.0.tgz", + "integrity": "sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ==" + }, + "@typescript-eslint/typescript-estree": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.33.0.tgz", + "integrity": "sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA==", + "requires": { + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/visitor-keys": "4.33.0", + "debug": "^4.3.1", + "globby": "^11.0.3", + "is-glob": "^4.0.1", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.33.0.tgz", + "integrity": "sha512-uqi/2aSz9g2ftcHWf8uLPJA70rUv6yuMW5Bohw+bwcuzaxQIHaKFZCKGoGXIrc9vkTJ3+0txM73K0Hq3d5wgIg==", + "requires": { + "@typescript-eslint/types": "4.33.0", + "eslint-visitor-keys": "^2.0.0" + } + }, + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==" + } + } + }, + "@typescript-eslint/parser": { + "version": "5.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.43.0.tgz", + "integrity": "sha512-2iHUK2Lh7PwNUlhFxxLI2haSDNyXvebBO9izhjhMoDC+S3XI9qt2DGFUsiJ89m2k7gGYch2aEpYqV5F/+nwZug==", + "devOptional": true, + "requires": { + "@typescript-eslint/scope-manager": "5.43.0", + "@typescript-eslint/types": "5.43.0", + "@typescript-eslint/typescript-estree": "5.43.0", + "debug": "^4.3.4" + } + }, + "@typescript-eslint/scope-manager": { + "version": "5.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.43.0.tgz", + "integrity": "sha512-XNWnGaqAtTJsUiZaoiGIrdJYHsUOd3BZ3Qj5zKp9w6km6HsrjPk/TGZv0qMTWyWj0+1QOqpHQ2gZOLXaGA9Ekw==", + "devOptional": true, + "requires": { + "@typescript-eslint/types": "5.43.0", + "@typescript-eslint/visitor-keys": "5.43.0" + } + }, + "@typescript-eslint/type-utils": { + "version": "5.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.43.0.tgz", + "integrity": "sha512-K21f+KY2/VvYggLf5Pk4tgBOPs2otTaIHy2zjclo7UZGLyFH86VfUOm5iq+OtDtxq/Zwu2I3ujDBykVW4Xtmtg==", + "devOptional": true, + "peer": true, + "requires": { + "@typescript-eslint/typescript-estree": "5.43.0", + "@typescript-eslint/utils": "5.43.0", + "debug": "^4.3.4", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/types": { + "version": "5.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.43.0.tgz", + "integrity": "sha512-jpsbcD0x6AUvV7tyOlyvon0aUsQpF8W+7TpJntfCUWU1qaIKu2K34pMwQKSzQH8ORgUrGYY6pVIh1Pi8TNeteg==", + "devOptional": true + }, + "@typescript-eslint/typescript-estree": { + "version": "5.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.43.0.tgz", + "integrity": "sha512-BZ1WVe+QQ+igWal2tDbNg1j2HWUkAa+CVqdU79L4HP9izQY6CNhXfkNwd1SS4+sSZAP/EthI1uiCSY/+H0pROg==", + "devOptional": true, + "requires": { + "@typescript-eslint/types": "5.43.0", + "@typescript-eslint/visitor-keys": "5.43.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/utils": { + "version": "5.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.43.0.tgz", + "integrity": "sha512-8nVpA6yX0sCjf7v/NDfeaOlyaIIqL7OaIGOWSPFqUKK59Gnumd3Wa+2l8oAaYO2lk0sO+SbWFWRSvhu8gLGv4A==", + "devOptional": true, + "peer": true, + "requires": { + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.43.0", + "@typescript-eslint/types": "5.43.0", + "@typescript-eslint/typescript-estree": "5.43.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0", + "semver": "^7.3.7" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "5.43.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.43.0.tgz", + "integrity": "sha512-icl1jNH/d18OVHLfcwdL3bWUKsBeIiKYTGxMJCoGe7xFht+E4QgzOqoWYrU8XSLJWhVw8nTacbm03v23J/hFTg==", + "devOptional": true, + "requires": { + "@typescript-eslint/types": "5.43.0", + "eslint-visitor-keys": "^3.3.0" + } + }, + "@webassemblyjs/ast": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", + "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", + "requires": { + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0" + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", + "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==" + }, + "@webassemblyjs/helper-api-error": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", + "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==" + }, + "@webassemblyjs/helper-buffer": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz", + "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==" + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", + "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", + "requires": { + "@webassemblyjs/wast-printer": "1.9.0" + } + }, + "@webassemblyjs/helper-fsm": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", + "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==" + }, + "@webassemblyjs/helper-module-context": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", + "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", + "requires": { + "@webassemblyjs/ast": "1.9.0" + } + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", + "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==" + }, + "@webassemblyjs/helper-wasm-section": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz", + "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==", + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0" + } + }, + "@webassemblyjs/ieee754": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz", + "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==", + "requires": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "@webassemblyjs/leb128": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz", + "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==", + "requires": { + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/utf8": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz", + "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==" + }, + "@webassemblyjs/wasm-edit": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz", + "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==", + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/helper-wasm-section": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-opt": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0", + "@webassemblyjs/wast-printer": "1.9.0" + } + }, + "@webassemblyjs/wasm-gen": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz", + "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==", + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" + } + }, + "@webassemblyjs/wasm-opt": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz", + "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==", + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-buffer": "1.9.0", + "@webassemblyjs/wasm-gen": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0" + } + }, + "@webassemblyjs/wasm-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz", + "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==", + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-wasm-bytecode": "1.9.0", + "@webassemblyjs/ieee754": "1.9.0", + "@webassemblyjs/leb128": "1.9.0", + "@webassemblyjs/utf8": "1.9.0" + } + }, + "@webassemblyjs/wast-parser": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", + "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/floating-point-hex-parser": "1.9.0", + "@webassemblyjs/helper-api-error": "1.9.0", + "@webassemblyjs/helper-code-frame": "1.9.0", + "@webassemblyjs/helper-fsm": "1.9.0", + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", + "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/wast-parser": "1.9.0", + "@xtuc/long": "4.2.2" + } + }, + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" + }, + "@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==" + }, + "abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==" + }, + "accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "requires": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + } + }, + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" + }, + "acorn-globals": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", + "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "requires": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" + } + }, + "acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "requires": {} + }, + "acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==" + }, + "address": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/address/-/address-1.1.2.tgz", + "integrity": "sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA==" + }, + "adjust-sourcemap-loader": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-3.0.0.tgz", + "integrity": "sha512-YBrGyT2/uVQ/c6Rr+t6ZJXniY03YtHGMJQYal368burRGYKqhx9qGTWqcBU5s1CwYY9E/ri63RYyG1IacMZtqw==", + "requires": { + "loader-utils": "^2.0.0", + "regex-parser": "^2.2.11" + } + }, + "agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "requires": { + "debug": "4" + } + }, + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ajv-errors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", + "requires": {} + }, + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "requires": {} + }, + "algo-msgpack-with-bigint": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/algo-msgpack-with-bigint/-/algo-msgpack-with-bigint-2.1.1.tgz", + "integrity": "sha512-F1tGh056XczEaEAqu7s+hlZUDWwOBT70Eq0lfMpBP2YguSQVyxRbprLq5rELXKQOyOaixTWYhMeMQMzP0U5FoQ==" + }, + "algosdk": { + "version": "1.23.2", + "resolved": "https://registry.npmjs.org/algosdk/-/algosdk-1.23.2.tgz", + "integrity": "sha512-ZDq71Kq+e3bvHxnTi/hWqom2/YHeTrbkxenOOCvPidRQuwkaOQAs92c4fqImdn7+Y+MfLhdtQspBLFR1hQTE4A==", + "requires": { + "algo-msgpack-with-bigint": "^2.1.1", + "buffer": "^6.0.2", + "cross-fetch": "^3.1.5", + "hi-base32": "^0.5.1", + "js-sha256": "^0.9.0", + "js-sha3": "^0.8.0", + "js-sha512": "^0.8.0", + "json-bigint": "^1.0.0", + "tweetnacl": "^1.0.3", + "vlq": "^2.0.4" + } + }, + "alphanum-sort": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz", + "integrity": "sha512-0FcBfdcmaumGPQ0qPn7Q5qTgz/ooXgIyp1rf8ik5bGX8mpE2YHjC0P/eyQvxu1GURYQgq9ozf2mteQ5ZD9YiyQ==" + }, + "ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==" + }, + "ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "requires": { + "type-fest": "^0.21.3" + }, + "dependencies": { + "type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==" + } + } + }, + "ansi-html": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz", + "integrity": "sha512-JoAxEa1DfP9m2xfB/y2r/aKcwXNlltr4+0QSBC4TrLfcxyvepX2Pv0t/xpgGV5bGsDzCYV8SzjWgyCW0T9yYbA==" + }, + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "aria-query": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz", + "integrity": "sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==", + "requires": { + "@babel/runtime": "^7.10.2", + "@babel/runtime-corejs3": "^7.10.2" + } + }, + "arity-n": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arity-n/-/arity-n-1.0.4.tgz", + "integrity": "sha512-fExL2kFDC1Q2DUOx3whE/9KoN66IzkY4b4zUHUBFM1ojEYjZZYDcUW3bek/ufGionX9giIKDC5redH2IlGqcQQ==" + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==" + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==" + }, + "array-differ": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz", + "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==", + "dev": true + }, + "array-flatten": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", + "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==" + }, + "array-includes": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz", + "integrity": "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "get-intrinsic": "^1.1.3", + "is-string": "^1.0.7" + } + }, + "array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==" + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==" + }, + "array.prototype.flat": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz", + "integrity": "sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0" + } + }, + "array.prototype.flatmap": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz", + "integrity": "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0" + } + }, + "array.prototype.reduce": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.5.tgz", + "integrity": "sha512-kDdugMl7id9COE8R7MHF5jWk7Dqt/fs4Pv+JXoICnYwqpjjjbUurz6w5fT5IG6brLdJhv6/VoHB0H7oyIBXd+Q==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-array-method-boxes-properly": "^1.0.0", + "is-string": "^1.0.7" + } + }, + "arrify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==" + }, + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" + }, + "asn1.js": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + } + } + }, + "assert": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", + "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", + "requires": { + "object-assign": "^4.1.1", + "util": "0.10.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha512-8nWq2nLTAwd02jTqJExUYFSD/fKq6VH9Y/oG2accc/kdI0V98Bag8d5a4gi3XHz73rDWa2PvTtvcWYquKqSENA==" + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha512-5KiHfsmkqacuKjkRkdV7SsfDJ2EGiPsK92s2MhNSY0craxjTdKTtqKsJaCWp4LW33ZZ0OPUv1WO/TFvNQRiQxQ==", + "requires": { + "inherits": "2.0.1" + } + } + } + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==" + }, + "ast-types-flow": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", + "integrity": "sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==" + }, + "astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==" + }, + "async": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "requires": { + "lodash": "^4.17.14" + } + }, + "async-each": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==" + }, + "async-limiter": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", + "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==" + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==" + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" + }, + "autoprefixer": { + "version": "9.8.8", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.8.tgz", + "integrity": "sha512-eM9d/swFopRt5gdJ7jrpCwgvEMIayITpojhkkSMRsFHYuH5bkSQ4p/9qTEHtmNudUZh22Tehu7I6CxAW0IXTKA==", + "requires": { + "browserslist": "^4.12.0", + "caniuse-lite": "^1.0.30001109", + "normalize-range": "^0.1.2", + "num2fraction": "^1.2.2", + "picocolors": "^0.2.1", + "postcss": "^7.0.32", + "postcss-value-parser": "^4.1.0" + } + }, + "axe-core": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.5.2.tgz", + "integrity": "sha512-u2MVsXfew5HBvjsczCv+xlwdNnB1oQR9HlAcsejZttNjKKSkeDNVwB1vMThIUIFI9GoT57Vtk8iQLwqOfAkboA==" + }, + "axobject-query": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz", + "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==" + }, + "babel-eslint": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", + "integrity": "sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==", + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.7.0", + "@babel/traverse": "^7.7.0", + "@babel/types": "^7.7.0", + "eslint-visitor-keys": "^1.0.0", + "resolve": "^1.12.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==" + } + } + }, + "babel-extract-comments": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/babel-extract-comments/-/babel-extract-comments-1.0.0.tgz", + "integrity": "sha512-qWWzi4TlddohA91bFwgt6zO/J0X+io7Qp184Fw0m2JYRSTZnJbFR8+07KmzudHCZgOiKRCrjhylwv9Xd8gfhVQ==", + "requires": { + "babylon": "^6.18.0" + } + }, + "babel-jest": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-26.6.3.tgz", + "integrity": "sha512-pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA==", + "requires": { + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/babel__core": "^7.1.7", + "babel-plugin-istanbul": "^6.0.0", + "babel-preset-jest": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "slash": "^3.0.0" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + } + } + }, + "babel-loader": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.1.0.tgz", + "integrity": "sha512-7q7nC1tYOrqvUrN3LQK4GwSk/TQorZSOlO9C+RZDZpODgyN4ZlCqE5q9cDsyWOliN+aU9B4JX01xK9eJXowJLw==", + "requires": { + "find-cache-dir": "^2.1.0", + "loader-utils": "^1.4.0", + "mkdirp": "^0.5.3", + "pify": "^4.0.1", + "schema-utils": "^2.6.5" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + } + } + }, + "babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + } + }, + "babel-plugin-jest-hoist": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz", + "integrity": "sha512-PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw==", + "requires": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" + } + }, + "babel-plugin-macros": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", + "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", + "requires": { + "@babel/runtime": "^7.12.5", + "cosmiconfig": "^7.0.0", + "resolve": "^1.19.0" + } + }, + "babel-plugin-named-asset-import": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.3.8.tgz", + "integrity": "sha512-WXiAc++qo7XcJ1ZnTYGtLxmBCVbddAml3CEXgWaBzNzLNoxtQ8AiGEFDMOhot9XjTCQbvP5E77Fj9Gk924f00Q==", + "requires": {} + }, + "babel-plugin-polyfill-corejs2": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", + "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", + "requires": { + "@babel/compat-data": "^7.17.7", + "@babel/helper-define-polyfill-provider": "^0.3.3", + "semver": "^6.1.1" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "babel-plugin-polyfill-corejs3": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz", + "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==", + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.3", + "core-js-compat": "^3.25.1" + } + }, + "babel-plugin-polyfill-regenerator": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", + "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.3" + } + }, + "babel-plugin-syntax-object-rest-spread": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", + "integrity": "sha512-C4Aq+GaAj83pRQ0EFgTvw5YO6T3Qz2KGrNRwIj9mSoNHVvdZY4KO2uA6HNtNXCw993iSZnckY1aLW8nOi8i4+w==" + }, + "babel-plugin-transform-object-rest-spread": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz", + "integrity": "sha512-ocgA9VJvyxwt+qJB0ncxV8kb/CjfTcECUY4tQ5VT7nP6Aohzobm8CDFaQ5FHdvZQzLmf0sgDxB8iRXZXxwZcyA==", + "requires": { + "babel-plugin-syntax-object-rest-spread": "^6.8.0", + "babel-runtime": "^6.26.0" + } + }, + "babel-plugin-transform-react-remove-prop-types": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-remove-prop-types/-/babel-plugin-transform-react-remove-prop-types-0.4.24.tgz", + "integrity": "sha512-eqj0hVcJUR57/Ug2zE1Yswsw4LhuqqHhD+8v120T1cl3kjg76QwtyBrdIk4WVwK+lAhBJVYCd/v+4nc4y+8JsA==" + }, + "babel-preset-current-node-syntax": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", + "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "requires": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-top-level-await": "^7.8.3" + } + }, + "babel-preset-jest": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz", + "integrity": "sha512-YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ==", + "requires": { + "babel-plugin-jest-hoist": "^26.6.2", + "babel-preset-current-node-syntax": "^1.0.0" + } + }, + "babel-preset-react-app": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/babel-preset-react-app/-/babel-preset-react-app-10.0.1.tgz", + "integrity": "sha512-b0D9IZ1WhhCWkrTXyFuIIgqGzSkRIH5D5AmB0bXbzYAB1OBAwHcUeyWW2LorutLWF5btNo/N7r/cIdmvvKJlYg==", + "requires": { + "@babel/core": "^7.16.0", + "@babel/plugin-proposal-class-properties": "^7.16.0", + "@babel/plugin-proposal-decorators": "^7.16.4", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.16.0", + "@babel/plugin-proposal-numeric-separator": "^7.16.0", + "@babel/plugin-proposal-optional-chaining": "^7.16.0", + "@babel/plugin-proposal-private-methods": "^7.16.0", + "@babel/plugin-transform-flow-strip-types": "^7.16.0", + "@babel/plugin-transform-react-display-name": "^7.16.0", + "@babel/plugin-transform-runtime": "^7.16.4", + "@babel/preset-env": "^7.16.4", + "@babel/preset-react": "^7.16.0", + "@babel/preset-typescript": "^7.16.0", + "@babel/runtime": "^7.16.3", + "babel-plugin-macros": "^3.1.0", + "babel-plugin-transform-react-remove-prop-types": "^0.4.24" + } + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==", + "requires": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + }, + "dependencies": { + "core-js": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", + "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==" + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" + } + } + }, + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", + "requires": { + "is-descriptor": "^1.0.0" + } + } + } + }, + "base64-arraybuffer-es6": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/base64-arraybuffer-es6/-/base64-arraybuffer-es6-0.7.0.tgz", + "integrity": "sha512-ESyU/U1CFZDJUdr+neHRhNozeCv72Y7Vm0m1DCbjX3KBjT6eYocvAJlSk6+8+HkVwXlT1FNxhGW6q3UKAlCvvw==", + "dev": true + }, + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" + }, + "batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==" + }, + "bfj": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/bfj/-/bfj-7.0.2.tgz", + "integrity": "sha512-+e/UqUzwmzJamNF50tBV6tZPTORow7gQ96iFow+8b562OdMpEK0BcJEq2OSPEDmAbSMBQ7PKZ87ubFkgxpYWgw==", + "requires": { + "bluebird": "^3.5.5", + "check-types": "^11.1.1", + "hoopy": "^0.1.4", + "tryer": "^1.0.1" + } + }, + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==" + }, + "bignumber.js": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.0.tgz", + "integrity": "sha512-4LwHK4nfDOraBCtst+wOWIHbu1vhvAPJK8g8nROd4iuc3PSEjWif/qwbkh8jwCJz6yDBvtU4KPynETgrfh7y3A==" + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "devOptional": true + }, + "bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "optional": true, + "requires": { + "file-uri-to-path": "1.0.0" + } + }, + "bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" + }, + "bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==" + }, + "body-parser": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "requires": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "dependencies": { + "bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + } + } + }, + "bonjour": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", + "integrity": "sha512-RaVTblr+OnEli0r/ud8InrU7D+G0y6aJhlxaLa6Pwty4+xoxboF1BsUI45tujvRpbj9dQVoglChqonGAsjEBYg==", + "requires": { + "array-flatten": "^2.1.0", + "deep-equal": "^1.0.1", + "dns-equal": "^1.0.0", + "dns-txt": "^2.0.2", + "multicast-dns": "^6.0.1", + "multicast-dns-service-types": "^1.1.0" + } + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "requires": { + "fill-range": "^7.0.1" + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" + }, + "browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==" + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "requires": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "requires": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "requires": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "browserify-rsa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", + "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", + "requires": { + "bn.js": "^5.0.0", + "randombytes": "^2.0.1" + } + }, + "browserify-sign": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", + "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", + "requires": { + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.3", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + } + }, + "browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "requires": { + "pako": "~1.0.5" + } + }, + "browserslist": { + "version": "4.21.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", + "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", + "requires": { + "caniuse-lite": "^1.0.30001400", + "electron-to-chromium": "^1.4.251", + "node-releases": "^2.0.6", + "update-browserslist-db": "^1.0.9" + } + }, + "bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "requires": { + "node-int64": "^0.4.0" + } + }, + "buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "buffer-indexof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", + "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==" + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==" + }, + "builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==" + }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==" + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==" + }, + "cacache": { + "version": "15.3.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz", + "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", + "requires": { + "@npmcli/fs": "^1.0.0", + "@npmcli/move-file": "^1.0.1", + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "glob": "^7.1.4", + "infer-owner": "^1.0.4", + "lru-cache": "^6.0.0", + "minipass": "^3.1.1", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "mkdirp": "^1.0.3", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^8.0.1", + "tar": "^6.0.2", + "unique-filename": "^1.1.1" + }, + "dependencies": { + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" + } + } + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + } + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "caller-callsite": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", + "integrity": "sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==", + "requires": { + "callsites": "^2.0.0" + }, + "dependencies": { + "callsites": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", + "integrity": "sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ==" + } + } + }, + "caller-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", + "integrity": "sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A==", + "requires": { + "caller-callsite": "^2.0.0" + } + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" + }, + "camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "requires": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==" + }, + "camelcase-keys": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", + "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", + "dev": true, + "requires": { + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" + }, + "dependencies": { + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + } + } + }, + "caniuse-api": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", + "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", + "requires": { + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" + } + }, + "caniuse-lite": { + "version": "1.0.30001431", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001431.tgz", + "integrity": "sha512-zBUoFU0ZcxpvSt9IU66dXVT/3ctO1cy4y9cscs1szkPlcWb6pasYM144GqrUygUbT+k7cmUCW61cvskjcv0enQ==" + }, + "capture-exit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz", + "integrity": "sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==", + "requires": { + "rsvp": "^4.8.4" + } + }, + "case-sensitive-paths-webpack-plugin": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.3.0.tgz", + "integrity": "sha512-/4YgnZS8y1UXXmC02xD5rRrBEu6T5ub+mQHLNRj0fzTRbgdBYhsNo2V5EqwgqrExjxsjtF/OpAKAMkKsxbD5XQ==" + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==" + }, + "check-types": { + "version": "11.1.2", + "resolved": "https://registry.npmjs.org/check-types/-/check-types-11.1.2.tgz", + "integrity": "sha512-tzWzvgePgLORb9/3a0YenggReLKAIb2owL03H2Xdoe5pKcUyWRSEQ8xfCar8t2SIAuEDwtmx2da1YB52YuHQMQ==" + }, + "chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "devOptional": true, + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + } + }, + "chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" + }, + "chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==" + }, + "ci-info": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.6.1.tgz", + "integrity": "sha512-up5ggbaDqOqJ4UqLKZ2naVkyqSJQgJi5lwD6b6mM748ysrghDBX0bx/qJTUHzw7zu6Mq4gycviSF5hJnwceD8w==", + "dev": true + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "cjs-module-lexer": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-0.6.0.tgz", + "integrity": "sha512-uc2Vix1frTfnuzxxu1Hp4ktSvM3QaI4oXl4ZUqL1wjTu/BGki9TrCWoqLTg/drR1KwAEarXuRFCG2Svr1GxPFw==" + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "classnames": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz", + "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==", + "dev": true + }, + "clean-css": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", + "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", + "requires": { + "source-map": "~0.6.0" + } + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" + }, + "cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "requires": { + "restore-cursor": "^3.1.0" + } + }, + "cli-truncate": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", + "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", + "dev": true, + "requires": { + "slice-ansi": "^5.0.0", + "string-width": "^5.0.0" + } + }, + "cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + }, + "dependencies": { + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + } + } + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==" + }, + "coa": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz", + "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==", + "requires": { + "@types/q": "^1.5.1", + "chalk": "^2.4.1", + "q": "^1.1.2" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "collect-v8-coverage": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", + "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==" + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==", + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", + "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", + "requires": { + "color-convert": "^1.9.3", + "color-string": "^1.6.0" + }, + "dependencies": { + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + } + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "color-string": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "requires": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "colord": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", + "dev": true + }, + "colorette": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", + "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", + "dev": true + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==" + }, + "common-tags": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz", + "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==" + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" + }, + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" + }, + "compose-function": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/compose-function/-/compose-function-3.0.3.tgz", + "integrity": "sha512-xzhzTJ5eC+gmIzvZq+C3kCJHsp9os6tJkrigDRZclyGtOKINbZtE8n1Tzmeh32jW+BUDPbvZpibwvJHBLGMVwg==", + "requires": { + "arity-n": "^1.0.4" + } + }, + "compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "requires": { + "mime-db": ">= 1.43.0 < 2" + } + }, + "compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "requires": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + } + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "confusing-browser-globals": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz", + "integrity": "sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==" + }, + "connect-history-api-fallback": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", + "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==" + }, + "console-browserify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" + }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==" + }, + "content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "requires": { + "safe-buffer": "5.2.1" + } + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" + }, + "convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" + }, + "cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==" + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" + }, + "copy-concurrently": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", + "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", + "requires": { + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" + }, + "dependencies": { + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "requires": { + "glob": "^7.1.3" + } + } + } + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==" + }, + "core-js": { + "version": "3.26.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.26.1.tgz", + "integrity": "sha512-21491RRQVzUn0GGM9Z1Jrpr6PNPxPi+Za8OM9q4tksTSnlbXXGKK1nXNg/QvwFYettXvSX6zWKCtHHfjN4puyA==" + }, + "core-js-compat": { + "version": "3.26.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.26.1.tgz", + "integrity": "sha512-622/KzTudvXCDLRw70iHW4KKs1aGpcRcowGWyYJr2DEBfRrd6hNJybxSWJFuZYD4ma86xhrwDDHxmDaIq4EA8A==", + "requires": { + "browserslist": "^4.21.4" + } + }, + "core-js-pure": { + "version": "3.26.1", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.26.1.tgz", + "integrity": "sha512-VVXcDpp/xJ21KdULRq/lXdLzQAtX7+37LzpyfFM973il0tWSsDEoyzG38G14AjTpK9VTfiNM9jnFauq/CpaWGQ==" + }, + "core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "requires": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "dependencies": { + "yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==" + } + } + }, + "create-ecdh": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", + "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "requires": { + "bn.js": "^4.1.0", + "elliptic": "^6.5.3" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + } + } + }, + "create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "requires": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "cross-fetch": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", + "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", + "requires": { + "node-fetch": "2.6.7" + } + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "requires": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + } + }, + "crypto-random-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", + "integrity": "sha512-GsVpkFPlycH7/fRR7Dhcmnoii54gV1nz7y4CWyeFS14N+JVBBhY+r8amRHE4BwSYal7BPTDp8isvAlCxyFt3Hg==" + }, + "css": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", + "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", + "requires": { + "inherits": "^2.0.3", + "source-map": "^0.6.1", + "source-map-resolve": "^0.5.2", + "urix": "^0.1.0" + } + }, + "css-blank-pseudo": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-0.1.4.tgz", + "integrity": "sha512-LHz35Hr83dnFeipc7oqFDmsjHdljj3TQtxGGiNWSOsTLIAubSm4TEz8qCaKFpk7idaQ1GfWscF4E6mgpBysA1w==", + "requires": { + "postcss": "^7.0.5" + } + }, + "css-color-names": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz", + "integrity": "sha512-zj5D7X1U2h2zsXOAM8EyUREBnnts6H+Jm+d1M2DbiQQcUtnqgQsMrdo8JW9R80YFUmIdBZeMu5wvYM7hcgWP/Q==" + }, + "css-declaration-sorter": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz", + "integrity": "sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA==", + "requires": { + "postcss": "^7.0.1", + "timsort": "^0.3.0" + } + }, + "css-functions-list": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/css-functions-list/-/css-functions-list-3.1.0.tgz", + "integrity": "sha512-/9lCvYZaUbBGvYUgYGFJ4dcYiyqdhSjG7IPVluoV8A1ILjkF7ilmhp1OGUz8n+nmBcu0RNrQAzgD8B6FJbrt2w==", + "dev": true + }, + "css-has-pseudo": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-0.10.0.tgz", + "integrity": "sha512-Z8hnfsZu4o/kt+AuFzeGpLVhFOGO9mluyHBaA2bA8aCGTwah5sT3WV/fTHH8UNZUytOIImuGPrl/prlb4oX4qQ==", + "requires": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^5.0.0-rc.4" + }, + "dependencies": { + "cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==" + }, + "postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "requires": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "css-loader": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-4.3.0.tgz", + "integrity": "sha512-rdezjCjScIrsL8BSYszgT4s476IcNKt6yX69t0pHjJVnPUTDpn4WfIpDQTN3wCJvUvfsz/mFjuGOekf3PY3NUg==", + "requires": { + "camelcase": "^6.0.0", + "cssesc": "^3.0.0", + "icss-utils": "^4.1.1", + "loader-utils": "^2.0.0", + "postcss": "^7.0.32", + "postcss-modules-extract-imports": "^2.0.0", + "postcss-modules-local-by-default": "^3.0.3", + "postcss-modules-scope": "^2.2.0", + "postcss-modules-values": "^3.0.0", + "postcss-value-parser": "^4.1.0", + "schema-utils": "^2.7.1", + "semver": "^7.3.2" + } + }, + "css-prefers-color-scheme": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-3.1.1.tgz", + "integrity": "sha512-MTu6+tMs9S3EUqzmqLXEcgNRbNkkD/TGFvowpeoWJn5Vfq7FMgsmRQs9X5NXAURiOBmOxm/lLjsDNXDE6k9bhg==", + "requires": { + "postcss": "^7.0.5" + } + }, + "css-rule-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/css-rule-stream/-/css-rule-stream-1.1.0.tgz", + "integrity": "sha512-qiio/Zkr8I19jh/XuzEkK8OKDQRTrEYaRyIHy4Bwh/tPUe0w8GcQs7r6x24Yc9lT+FbnZFYULxEIXCmaymguUQ==", + "dev": true, + "requires": { + "css-tokenize": "^1.0.1", + "duplexer2": "0.0.2", + "ldjson-stream": "^1.2.1", + "through2": "^0.6.3" + }, + "dependencies": { + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true + }, + "through2": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", + "integrity": "sha512-RkK/CCESdTKQZHdmKICijdKKsCRVHs5KsLZ6pACAmF/1GPUQhonHSXWNERctxEp7RmvjdNbZTL5z9V7nSCXKcg==", + "dev": true, + "requires": { + "readable-stream": ">=1.0.33-1 <1.1.0-0", + "xtend": ">=4.0.0 <4.1.0-0" + } + } + } + }, + "css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "requires": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + } + }, + "css-select-base-adapter": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz", + "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==" + }, + "css-tokenize": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/css-tokenize/-/css-tokenize-1.0.1.tgz", + "integrity": "sha512-gLmmbJdwH9HLY4bcA17lnZ8GgPwEXRbvxBJGHnkiB6gLhRpTzjkjtMIvz7YORGW/Ptv2oMk8b5g+u7mRD6Dd7A==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "readable-stream": "^1.0.33" + }, + "dependencies": { + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true + } + } + }, + "css-tree": { + "version": "1.0.0-alpha.37", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz", + "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==", + "requires": { + "mdn-data": "2.0.4", + "source-map": "^0.6.1" + } + }, + "css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==" + }, + "cssdb": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-4.4.0.tgz", + "integrity": "sha512-LsTAR1JPEM9TpGhl/0p3nQecC2LJ0kD8X5YARu1hk/9I1gril5vDtMZyNxcEpxxDj34YNck/ucjuoUd66K03oQ==" + }, + "cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==" + }, + "cssnano": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-4.1.11.tgz", + "integrity": "sha512-6gZm2htn7xIPJOHY824ERgj8cNPgPxyCSnkXc4v7YvNW+TdVfzgngHcEhy/8D11kUWRUMbke+tC+AUcUsnMz2g==", + "requires": { + "cosmiconfig": "^5.0.0", + "cssnano-preset-default": "^4.0.8", + "is-resolvable": "^1.0.0", + "postcss": "^7.0.0" + }, + "dependencies": { + "cosmiconfig": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", + "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "requires": { + "import-fresh": "^2.0.0", + "is-directory": "^0.3.1", + "js-yaml": "^3.13.1", + "parse-json": "^4.0.0" + } + }, + "import-fresh": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", + "integrity": "sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==", + "requires": { + "caller-path": "^2.0.0", + "resolve-from": "^3.0.0" + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==" + } + } + }, + "cssnano-preset-default": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-4.0.8.tgz", + "integrity": "sha512-LdAyHuq+VRyeVREFmuxUZR1TXjQm8QQU/ktoo/x7bz+SdOge1YKc5eMN6pRW7YWBmyq59CqYba1dJ5cUukEjLQ==", + "requires": { + "css-declaration-sorter": "^4.0.1", + "cssnano-util-raw-cache": "^4.0.1", + "postcss": "^7.0.0", + "postcss-calc": "^7.0.1", + "postcss-colormin": "^4.0.3", + "postcss-convert-values": "^4.0.1", + "postcss-discard-comments": "^4.0.2", + "postcss-discard-duplicates": "^4.0.2", + "postcss-discard-empty": "^4.0.1", + "postcss-discard-overridden": "^4.0.1", + "postcss-merge-longhand": "^4.0.11", + "postcss-merge-rules": "^4.0.3", + "postcss-minify-font-values": "^4.0.2", + "postcss-minify-gradients": "^4.0.2", + "postcss-minify-params": "^4.0.2", + "postcss-minify-selectors": "^4.0.2", + "postcss-normalize-charset": "^4.0.1", + "postcss-normalize-display-values": "^4.0.2", + "postcss-normalize-positions": "^4.0.2", + "postcss-normalize-repeat-style": "^4.0.2", + "postcss-normalize-string": "^4.0.2", + "postcss-normalize-timing-functions": "^4.0.2", + "postcss-normalize-unicode": "^4.0.1", + "postcss-normalize-url": "^4.0.1", + "postcss-normalize-whitespace": "^4.0.2", + "postcss-ordered-values": "^4.1.2", + "postcss-reduce-initial": "^4.0.3", + "postcss-reduce-transforms": "^4.0.2", + "postcss-svgo": "^4.0.3", + "postcss-unique-selectors": "^4.0.1" + } + }, + "cssnano-util-get-arguments": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz", + "integrity": "sha512-6RIcwmV3/cBMG8Aj5gucQRsJb4vv4I4rn6YjPbVWd5+Pn/fuG+YseGvXGk00XLkoZkaj31QOD7vMUpNPC4FIuw==" + }, + "cssnano-util-get-match": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz", + "integrity": "sha512-JPMZ1TSMRUPVIqEalIBNoBtAYbi8okvcFns4O0YIhcdGebeYZK7dMyHJiQ6GqNBA9kE0Hym4Aqym5rPdsV/4Cw==" + }, + "cssnano-util-raw-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz", + "integrity": "sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA==", + "requires": { + "postcss": "^7.0.0" + } + }, + "cssnano-util-same-parent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz", + "integrity": "sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q==" + }, + "csso": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "requires": { + "css-tree": "^1.1.2" + }, + "dependencies": { + "css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "requires": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + } + }, + "mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==" + } + } + }, + "cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==" + }, + "cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "requires": { + "cssom": "~0.3.6" + }, + "dependencies": { + "cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==" + } + } + }, + "csstype": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", + "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==", + "dev": true + }, + "cyclist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", + "integrity": "sha512-NJGVKPS81XejHcLhaLJS7plab0fK3slPh11mESeeDq2W4ZI5kUKK/LRRdVDvjJseojbPB7ZwjnyOybg3Igea/A==" + }, + "d": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "requires": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } + }, + "damerau-levenshtein": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", + "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==" + }, + "data-urls": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "requires": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + }, + "dependencies": { + "tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "requires": { + "punycode": "^2.1.1" + } + }, + "whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "requires": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + } + } + } + }, + "date-fns": { + "version": "2.29.3", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.29.3.tgz", + "integrity": "sha512-dDCnyH2WnnKusqvZZ6+jA1O51Ibt8ZMRNkDZdyAyK4YfbDwa/cEmuztzG5pk6hqlp9aSBPYcjOlktquahGwGeA==" + }, + "date-fns-tz": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/date-fns-tz/-/date-fns-tz-1.3.7.tgz", + "integrity": "sha512-1t1b8zyJo+UI8aR+g3iqr5fkUHWpd58VBx8J/ZSQ+w7YrGlw80Ag4sA86qkfCXRBLmMc4I2US+aPMd4uKvwj5g==", + "requires": {} + }, + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "requires": { + "ms": "2.1.2" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==" + }, + "decamelize-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", + "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", + "dev": true, + "requires": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + }, + "dependencies": { + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", + "dev": true + } + } + }, + "decimal.js": { + "version": "10.4.2", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.2.tgz", + "integrity": "sha512-ic1yEvwT6GuvaYwBLLY6/aFFgjZdySKTE8en/fkU3QICTmRtgtSlFn0u0BXN06InZwtfCelR7j8LRiDI/02iGA==" + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==" + }, + "dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==" + }, + "deep-equal": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", + "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", + "requires": { + "is-arguments": "^1.0.4", + "is-date-object": "^1.0.1", + "is-regex": "^1.0.4", + "object-is": "^1.0.1", + "object-keys": "^1.1.1", + "regexp.prototype.flags": "^1.2.0" + } + }, + "deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" + }, + "deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==" + }, + "default-gateway": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-4.2.0.tgz", + "integrity": "sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA==", + "requires": { + "execa": "^1.0.0", + "ip-regex": "^2.1.0" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "requires": { + "pump": "^3.0.0" + } + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==" + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", + "requires": { + "path-key": "^2.0.0" + } + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==" + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==" + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "define-properties": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "requires": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + } + }, + "del": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", + "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==", + "requires": { + "@types/glob": "^7.1.1", + "globby": "^6.1.0", + "is-path-cwd": "^2.0.0", + "is-path-in-cwd": "^2.0.0", + "p-map": "^2.0.0", + "pify": "^4.0.1", + "rimraf": "^2.6.3" + }, + "dependencies": { + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==", + "requires": { + "array-uniq": "^1.0.1" + } + }, + "globby": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha512-KVbFv2TQtbzCoxAnfD6JcHZTYCzyliEaaeM/gH8qQdkKr5s0OP9scEgvdcngyk7AVdY6YVW/TJHd+lQ/Df3Daw==", + "requires": { + "array-union": "^1.0.1", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==" + } + } + }, + "p-map": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", + "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==" + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "requires": { + "glob": "^7.1.3" + } + } + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" + }, + "depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" + }, + "des.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", + "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "requires": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" + }, + "detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==" + }, + "detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" + }, + "detect-port-alt": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz", + "integrity": "sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==", + "requires": { + "address": "^1.0.1", + "debug": "^2.6.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + } + } + }, + "diff-sequences": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.3.1.tgz", + "integrity": "sha512-hlM3QR272NXCi4pq+N4Kok4kOp6EsgOM3ZSpJI7Da3UAs+Ttsi8MRmB6trM/lhyzUxGfOgnpkHtgqm5Q/CTcfQ==", + "dev": true + }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "requires": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + } + } + }, + "dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "requires": { + "path-type": "^4.0.0" + } + }, + "dns-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", + "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==" + }, + "dns-packet": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.4.tgz", + "integrity": "sha512-BQ6F4vycLXBvdrJZ6S3gZewt6rcrks9KBgM9vrhW+knGRqc8uEdT7fuCwloc7nny5xNoMJ17HGH0R/6fpo8ECA==", + "requires": { + "ip": "^1.1.0", + "safe-buffer": "^5.0.1" + } + }, + "dns-txt": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", + "integrity": "sha512-Ix5PrWjphuSoUXV/Zv5gaFHjnaJtb02F2+Si3Ht9dyJ87+Z/lMmy+dpNHtTGraNK958ndXq2i+GLkWsWHcKaBQ==", + "requires": { + "buffer-indexof": "^1.0.0" + } + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "requires": { + "esutils": "^2.0.2" + } + }, + "doiuse": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/doiuse/-/doiuse-4.4.1.tgz", + "integrity": "sha512-TUpr1/YNg20IB09tZmwGCTsTQoxj8jUld/hUZprZMj8vj0VpAJySXEWCr8WMvqvgzk0/kG/FxeSMGKode4UjPg==", + "dev": true, + "requires": { + "browserslist": "^4.16.1", + "caniuse-lite": "^1.0.30001179", + "css-rule-stream": "^1.1.0", + "duplexer2": "0.0.2", + "ldjson-stream": "^1.2.1", + "multimatch": "^5.0.0", + "postcss": "^8.2.4", + "source-map": "^0.7.3", + "through2": "^4.0.2", + "yargs": "^16.2.0" + }, + "dependencies": { + "cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "postcss": { + "version": "8.4.19", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.19.tgz", + "integrity": "sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==", + "dev": true, + "requires": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + } + }, + "source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true + }, + "yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + } + } + } + }, + "dom-converter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", + "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", + "requires": { + "utila": "~0.4" + } + }, + "dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + } + }, + "domain-browser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==" + }, + "domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==" + }, + "domexception": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", + "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "requires": { + "webidl-conversions": "^5.0.0" + }, + "dependencies": { + "webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==" + } + } + }, + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "requires": { + "domelementtype": "^2.2.0" + } + }, + "domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + } + }, + "dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "requires": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "requires": { + "is-obj": "^2.0.0" + }, + "dependencies": { + "is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==" + } + } + }, + "dotenv": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz", + "integrity": "sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==" + }, + "dotenv-expand": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-5.1.0.tgz", + "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==" + }, + "duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" + }, + "duplexer2": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz", + "integrity": "sha512-+AWBwjGadtksxjOQSFDhPNQbed7icNXApT4+2BNpsXzcCBiInq2H9XW0O8sfHFaPmnQRs7cg/P0fAr2IWQSW0g==", + "dev": true, + "requires": { + "readable-stream": "~1.1.9" + }, + "dependencies": { + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true + } + } + }, + "duplexify": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "requires": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" + }, + "ejs": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.7.4.tgz", + "integrity": "sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==" + }, + "electron-to-chromium": { + "version": "1.4.284", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", + "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==" + }, + "elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "requires": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + } + } + }, + "emittery": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.7.2.tgz", + "integrity": "sha512-A8OG5SR/ij3SsJdWDJdkkSYUjQdCUx6APQXem0SaEePBSRg4eymGYwBkKo1Y6DU+af/Jn2dBQqDBvjnr9Vi8nQ==" + }, + "emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + }, + "emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==" + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==" + }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "requires": { + "once": "^1.4.0" + } + }, + "enhanced-resolve": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz", + "integrity": "sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==", + "requires": { + "graceful-fs": "^4.1.2", + "memory-fs": "^0.5.0", + "tapable": "^1.0.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "memory-fs": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", + "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "requires": { + "ansi-colors": "^4.1.1" + } + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" + }, + "env-cmd": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/env-cmd/-/env-cmd-10.1.0.tgz", + "integrity": "sha512-mMdWTT9XKN7yNth/6N6g2GuKuJTsKMDHlQFUDacb/heQRRWOTIZ42t1rMHnQu4jYxU1ajdTeJM+9eEETlqToMA==", + "requires": { + "commander": "^4.0.0", + "cross-spawn": "^7.0.0" + } + }, + "errno": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "requires": { + "prr": "~1.0.1" + } + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "error-stack-parser": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz", + "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==", + "requires": { + "stackframe": "^1.3.4" + } + }, + "es-abstract": { + "version": "1.20.4", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.4.tgz", + "integrity": "sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==", + "requires": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.3", + "get-symbol-description": "^1.0.0", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.2", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", + "string.prototype.trimend": "^1.0.5", + "string.prototype.trimstart": "^1.0.5", + "unbox-primitive": "^1.0.2" + } + }, + "es-array-method-boxes-properly": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", + "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==" + }, + "es-shim-unscopables": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", + "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", + "requires": { + "has": "^1.0.3" + } + }, + "es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "es5-ext": { + "version": "0.10.62", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz", + "integrity": "sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==", + "requires": { + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.3", + "next-tick": "^1.1.0" + } + }, + "es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==", + "requires": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "es6-symbol": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "requires": { + "d": "^1.0.1", + "ext": "^1.1.2" + } + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==" + }, + "escodegen": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz", + "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==", + "requires": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + }, + "dependencies": { + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" + } + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==" + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "requires": { + "prelude-ls": "~1.1.2" + } + } + } + }, + "eslint": { + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.17.0.tgz", + "integrity": "sha512-zJk08MiBgwuGoxes5sSQhOtibZ75pz0J35XTRlZOk9xMffhpA9BTbQZxoXZzOl5zMbleShbGwtw+1kGferfFwQ==", + "requires": { + "@babel/code-frame": "^7.0.0", + "@eslint/eslintrc": "^0.2.2", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "eslint-scope": "^5.1.1", + "eslint-utils": "^2.1.0", + "eslint-visitor-keys": "^2.0.0", + "espree": "^7.3.1", + "esquery": "^1.2.0", + "esutils": "^2.0.2", + "file-entry-cache": "^6.0.0", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.0.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash": "^4.17.19", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.1.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", + "table": "^6.0.4", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "dependencies": { + "eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "requires": { + "eslint-visitor-keys": "^1.1.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==" + } + } + }, + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==" + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==" + } + } + }, + "eslint-config-prettier": { + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.5.0.tgz", + "integrity": "sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==", + "dev": true, + "requires": {} + }, + "eslint-import-resolver-node": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz", + "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==", + "requires": { + "debug": "^3.2.7", + "resolve": "^1.20.0" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "eslint-import-resolver-typescript": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-2.5.0.tgz", + "integrity": "sha512-qZ6e5CFr+I7K4VVhQu3M/9xGv9/YmwsEXrsm3nimw8vWaVHRDrQRp26BgCypTxBp3vUp4o5aVEJRiy0F2DFddQ==", + "dev": true, + "requires": { + "debug": "^4.3.1", + "glob": "^7.1.7", + "is-glob": "^4.0.1", + "resolve": "^1.20.0", + "tsconfig-paths": "^3.9.0" + } + }, + "eslint-module-utils": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.4.tgz", + "integrity": "sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==", + "requires": { + "debug": "^3.2.7" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "eslint-plugin-flowtype": { + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-flowtype/-/eslint-plugin-flowtype-5.10.0.tgz", + "integrity": "sha512-vcz32f+7TP+kvTUyMXZmCnNujBQZDNmcqPImw8b9PZ+16w1Qdm6ryRuYZYVaG9xRqqmAPr2Cs9FAX5gN+x/bjw==", + "requires": { + "lodash": "^4.17.15", + "string-natural-compare": "^3.0.1" + } + }, + "eslint-plugin-import": { + "version": "2.26.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.26.0.tgz", + "integrity": "sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==", + "requires": { + "array-includes": "^3.1.4", + "array.prototype.flat": "^1.2.5", + "debug": "^2.6.9", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-module-utils": "^2.7.3", + "has": "^1.0.3", + "is-core-module": "^2.8.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.values": "^1.1.5", + "resolve": "^1.22.0", + "tsconfig-paths": "^3.14.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "requires": { + "esutils": "^2.0.2" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + } + } + }, + "eslint-plugin-jest": { + "version": "24.7.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-24.7.0.tgz", + "integrity": "sha512-wUxdF2bAZiYSKBclsUMrYHH6WxiBreNjyDxbRv345TIvPeoCEgPNEn3Sa+ZrSqsf1Dl9SqqSREXMHExlMMu1DA==", + "requires": { + "@typescript-eslint/experimental-utils": "^4.0.1" + } + }, + "eslint-plugin-jsx-a11y": { + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.6.1.tgz", + "integrity": "sha512-sXgFVNHiWffBq23uiS/JaP6eVR622DqwB4yTzKvGZGcPq6/yZ3WmOZfuBks/vHWo9GaFOqC2ZK4i6+C35knx7Q==", + "requires": { + "@babel/runtime": "^7.18.9", + "aria-query": "^4.2.2", + "array-includes": "^3.1.5", + "ast-types-flow": "^0.0.7", + "axe-core": "^4.4.3", + "axobject-query": "^2.2.0", + "damerau-levenshtein": "^1.0.8", + "emoji-regex": "^9.2.2", + "has": "^1.0.3", + "jsx-ast-utils": "^3.3.2", + "language-tags": "^1.0.5", + "minimatch": "^3.1.2", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "eslint-plugin-react": { + "version": "7.31.10", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.31.10.tgz", + "integrity": "sha512-e4N/nc6AAlg4UKW/mXeYWd3R++qUano5/o+t+wnWxIf+bLsOaH3a4q74kX3nDjYym3VBN4HyO9nEn1GcAqgQOA==", + "requires": { + "array-includes": "^3.1.5", + "array.prototype.flatmap": "^1.3.0", + "doctrine": "^2.1.0", + "estraverse": "^5.3.0", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.5", + "object.fromentries": "^2.0.5", + "object.hasown": "^1.1.1", + "object.values": "^1.1.5", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.3", + "semver": "^6.3.0", + "string.prototype.matchall": "^4.0.7" + }, + "dependencies": { + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "requires": { + "esutils": "^2.0.2" + } + }, + "resolve": { + "version": "2.0.0-next.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz", + "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==", + "requires": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "eslint-plugin-react-hooks": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", + "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", + "requires": {} + }, + "eslint-plugin-testing-library": { + "version": "3.10.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-3.10.2.tgz", + "integrity": "sha512-WAmOCt7EbF1XM8XfbCKAEzAPnShkNSwcIsAD2jHdsMUT9mZJPjLCG7pMzbcC8kK366NOuGip8HKLDC+Xk4yIdA==", + "requires": { + "@typescript-eslint/experimental-utils": "^3.10.1" + }, + "dependencies": { + "@typescript-eslint/experimental-utils": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-3.10.1.tgz", + "integrity": "sha512-DewqIgscDzmAfd5nOGe4zm6Bl7PKtMG2Ad0KG8CUZAHlXfAKTF9Ol5PXhiMh39yRL2ChRH1cuuUGOcVyyrhQIw==", + "requires": { + "@types/json-schema": "^7.0.3", + "@typescript-eslint/types": "3.10.1", + "@typescript-eslint/typescript-estree": "3.10.1", + "eslint-scope": "^5.0.0", + "eslint-utils": "^2.0.0" + } + }, + "@typescript-eslint/types": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-3.10.1.tgz", + "integrity": "sha512-+3+FCUJIahE9q0lDi1WleYzjCwJs5hIsbugIgnbB+dSCYUxl8L6PwmsyOPFZde2hc1DlTo/xnkOgiTLSyAbHiQ==" + }, + "@typescript-eslint/typescript-estree": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-3.10.1.tgz", + "integrity": "sha512-QbcXOuq6WYvnB3XPsZpIwztBoquEYLXh2MtwVU+kO8jgYCiv4G5xrSP/1wg4tkvrEE+esZVquIPX/dxPlePk1w==", + "requires": { + "@typescript-eslint/types": "3.10.1", + "@typescript-eslint/visitor-keys": "3.10.1", + "debug": "^4.1.1", + "glob": "^7.1.6", + "is-glob": "^4.0.1", + "lodash": "^4.17.15", + "semver": "^7.3.2", + "tsutils": "^3.17.1" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-3.10.1.tgz", + "integrity": "sha512-9JgC82AaQeglebjZMgYR5wgmfUdUc+EitGUUMW8u2nDckaeimzW+VsoLV6FoimPv2id3VQzfjwBxEMVz08ameQ==", + "requires": { + "eslint-visitor-keys": "^1.1.0" + } + }, + "eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "requires": { + "eslint-visitor-keys": "^1.1.0" + } + }, + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==" + } + } + }, + "eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "dependencies": { + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" + } + } + }, + "eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "requires": { + "eslint-visitor-keys": "^2.0.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==" + } + } + }, + "eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "devOptional": true + }, + "eslint-webpack-plugin": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/eslint-webpack-plugin/-/eslint-webpack-plugin-2.7.0.tgz", + "integrity": "sha512-bNaVVUvU4srexGhVcayn/F4pJAz19CWBkKoMx7aSQ4wtTbZQCnG5O9LHCE42mM+JSKOUp7n6vd5CIwzj7lOVGA==", + "requires": { + "@types/eslint": "^7.29.0", + "arrify": "^2.0.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "schema-utils": "^3.1.1" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "espree": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", + "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "requires": { + "acorn": "^7.4.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^1.3.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==" + } + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + }, + "esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "requires": { + "estraverse": "^5.1.0" + } + }, + "esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "requires": { + "estraverse": "^5.2.0" + } + }, + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==" + }, + "estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==" + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==" + }, + "eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==" + }, + "events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" + }, + "eventsource": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-2.0.2.tgz", + "integrity": "sha512-IzUmBGPR3+oUG9dUeXynyNmf91/3zUSJg1lCktzKw47OXuhco54U3r9B7O4XX+Rb1Itm9OZ2b0RkTs10bICOxA==" + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "exec-sh": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.6.tgz", + "integrity": "sha512-nQn+hI3yp+oD0huYhKwvYI32+JFeq+XkNcD1GAo3Y/MjxsfVGmrrzrnzjWiNY6f+pUCP440fThsFh5gZrRAU/w==" + }, + "execa": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-6.1.0.tgz", + "integrity": "sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.1", + "human-signals": "^3.0.1", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^3.0.7", + "strip-final-newline": "^3.0.0" + } + }, + "exenv": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/exenv/-/exenv-1.2.2.tgz", + "integrity": "sha512-Z+ktTxTwv9ILfgKCk32OX3n/doe+OcLTRtqK9pcL+JsP3J1/VW8Uvl4ZjLlKqeW4rzK4oesDOGMEMRIZqtP4Iw==" + }, + "exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==" + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==", + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==" + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + } + } + }, + "expect": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.3.1.tgz", + "integrity": "sha512-gGb1yTgU30Q0O/tQq+z30KBWv24ApkMgFUpvKBkyLUBL68Wv8dHdJxTBZFl/iT8K/bqDHvUYRH6IIN3rToopPA==", + "dev": true, + "requires": { + "@jest/expect-utils": "^29.3.1", + "jest-get-type": "^29.2.0", + "jest-matcher-utils": "^29.3.1", + "jest-message-util": "^29.3.1", + "jest-util": "^29.3.1" + } + }, + "express": { + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "requires": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "dependencies": { + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + } + } + }, + "ext": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", + "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==", + "requires": { + "type": "^2.7.2" + }, + "dependencies": { + "type": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", + "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==" + } + } + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==" + } + } + }, + "fake-indexeddb": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fake-indexeddb/-/fake-indexeddb-4.0.0.tgz", + "integrity": "sha512-oCfWSJ/qvQn1XPZ8SHX6kY3zr1t+bN7faZ/lltGY0SBGhFOPXnWf0+pbO/MOAgfMx6khC2gK3S/bvAgQpuQHDQ==", + "dev": true, + "requires": { + "realistic-structured-clone": "^3.0.0" + } + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "fast-glob": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "requires": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + } + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==" + }, + "fastest-levenshtein": { + "version": "1.0.16", + "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", + "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", + "dev": true + }, + "fastq": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", + "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", + "requires": { + "reusify": "^1.0.4" + } + }, + "faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "requires": { + "websocket-driver": ">=0.5.1" + } + }, + "fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "requires": { + "bser": "2.1.1" + } + }, + "figgy-pudding": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", + "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==" + }, + "file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "requires": { + "flat-cache": "^3.0.4" + } + }, + "file-loader": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.1.1.tgz", + "integrity": "sha512-Klt8C4BjWSXYQAfhpYYkG4qHNTna4toMHEbWrI5IuVoxbU6uiDKeKAP99R8mmbJi3lvewn/jQBOgU4+NS3tDQw==", + "requires": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "optional": true + }, + "filesize": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/filesize/-/filesize-6.1.0.tgz", + "integrity": "sha512-LpCHtPQ3sFx67z+uh2HnSyWSLLu5Jxo21795uRDuar/EOuYWXib5EmPaGIBuSnRqH2IODiKA2k5re/K9OnN/Yg==" + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + } + } + }, + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "requires": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + } + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "requires": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + } + }, + "flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==" + }, + "flatten": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.3.tgz", + "integrity": "sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg==" + }, + "flush-write-stream": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", + "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", + "requires": { + "inherits": "^2.0.3", + "readable-stream": "^2.3.6" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "follow-redirects": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==" + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==" + }, + "fork-ts-checker-webpack-plugin": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-4.1.6.tgz", + "integrity": "sha512-DUxuQaKoqfNne8iikd14SAkh5uw4+8vNifp6gmA73yYNS6ywLIWSLD/n/mBzHQRpW3J7rbATEakmiA8JvkTyZw==", + "requires": { + "@babel/code-frame": "^7.5.5", + "chalk": "^2.4.1", + "micromatch": "^3.1.10", + "minimatch": "^3.0.4", + "semver": "^5.6.0", + "tapable": "^1.0.0", + "worker-rpc": "^0.1.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "^1.9.0" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==" + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "requires": { + "has-flag": "^3.0.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + } + } + }, + "form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, + "forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==" + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==", + "requires": { + "map-cache": "^0.2.2" + } + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==" + }, + "from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==", + "requires": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "requires": { + "minipass": "^3.0.0" + } + }, + "fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", + "integrity": "sha512-gehEzmPn2nAwr39eay+x3X34Ra+M2QlVUTLhkXPjWdeO8RF9kszk116avgBJM3ZyNHgHXBNx+VmPaFC36k0PzA==", + "requires": { + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "optional": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "function.prototype.name": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + } + }, + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==" + }, + "functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==" + }, + "gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==" + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" + }, + "get-intrinsic": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + } + }, + "get-own-enumerable-property-symbols": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==" + }, + "get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==" + }, + "get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true + }, + "get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + } + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==" + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "requires": { + "is-glob": "^4.0.1" + } + }, + "global-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "requires": { + "global-prefix": "^3.0.0" + } + }, + "global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "requires": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + }, + "dependencies": { + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "requires": { + "type-fest": "^0.8.1" + } + }, + "globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "requires": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + } + }, + "globjoin": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz", + "integrity": "sha512-xYfnw62CKG8nLkZBfWbhWwDw02CHty86jfPcc2cr3ZfeuK9ysoVPPEUxf21bAD/rWAgk52SuBrLJlefNy8mvFg==", + "dev": true + }, + "graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + }, + "growly": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", + "integrity": "sha512-+xGQY0YyAWCnqy7Cd++hc2JqMYzlm0dG30Jd0beaA64sROr8C4nt8Yc9V5Ro3avlSUDTN0ulqP/VBKi1/lLygw==", + "optional": true + }, + "gzip-size": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-5.1.1.tgz", + "integrity": "sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA==", + "requires": { + "duplexer": "^0.1.1", + "pify": "^4.0.1" + } + }, + "handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" + }, + "hard-rejection": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", + "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", + "dev": true + }, + "harmony-reflect": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/harmony-reflect/-/harmony-reflect-1.6.2.tgz", + "integrity": "sha512-HIp/n38R9kQjDEziXyDTuW3vvoxxyxjxFzXLrBr18uB47GnSt+G9D29fqrpM5ZkspMcPICud3XsBJQ4Y2URg8g==" + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "requires": { + "get-intrinsic": "^1.1.1" + } + }, + "has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" + }, + "has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "requires": { + "has-symbols": "^1.0.2" + } + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==", + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==", + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "requires": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + } + }, + "hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==" + }, + "hex-color-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/hex-color-regex/-/hex-color-regex-1.1.0.tgz", + "integrity": "sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==" + }, + "hi-base32": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/hi-base32/-/hi-base32-0.5.1.tgz", + "integrity": "sha512-EmBBpvdYh/4XxsnUybsPag6VikPYnN30td+vQk+GI3qpahVEG9+gTkG0aXVxTjBqQ5T6ijbWIu77O+C5WFWsnA==" + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "requires": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "hoopy": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/hoopy/-/hoopy-0.1.4.tgz", + "integrity": "sha512-HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ==" + }, + "hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + }, + "hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", + "requires": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "hsl-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/hsl-regex/-/hsl-regex-1.0.0.tgz", + "integrity": "sha512-M5ezZw4LzXbBKMruP+BNANf0k+19hDQMgpzBIYnya//Al+fjNct9Wf3b1WedLqdEs2hKBvxq/jh+DsHJLj0F9A==" + }, + "hsla-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/hsla-regex/-/hsla-regex-1.0.0.tgz", + "integrity": "sha512-7Wn5GMLuHBjZCb2bTmnDOycho0p/7UVaAeqXZGbHrBCl6Yd/xDhQJAXe6Ga9AXJH2I5zY1dEdYw2u1UptnSBJA==" + }, + "html-encoding-sniffer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", + "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "requires": { + "whatwg-encoding": "^1.0.5" + } + }, + "html-entities": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.4.0.tgz", + "integrity": "sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA==" + }, + "html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==" + }, + "html-minifier-terser": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", + "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==", + "requires": { + "camel-case": "^4.1.1", + "clean-css": "^4.2.3", + "commander": "^4.1.1", + "he": "^1.2.0", + "param-case": "^3.0.3", + "relateurl": "^0.2.7", + "terser": "^4.6.3" + } + }, + "html-tags": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.2.0.tgz", + "integrity": "sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg==", + "dev": true + }, + "html-webpack-plugin": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.5.0.tgz", + "integrity": "sha512-MouoXEYSjTzCrjIxWwg8gxL5fE2X2WZJLmBYXlaJhQUH5K/b5OrqmV7T4dB7iu0xkmJ6JlUuV6fFVtnqbPopZw==", + "requires": { + "@types/html-minifier-terser": "^5.0.0", + "@types/tapable": "^1.0.5", + "@types/webpack": "^4.41.8", + "html-minifier-terser": "^5.0.1", + "loader-utils": "^1.2.3", + "lodash": "^4.17.15", + "pretty-error": "^2.1.1", + "tapable": "^1.1.3", + "util.promisify": "1.0.0" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + } + } + }, + "htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + }, + "http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==" + }, + "http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "requires": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + } + }, + "http-parser-js": { + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", + "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==" + }, + "http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "requires": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + } + }, + "http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "requires": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + } + }, + "http-proxy-middleware": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz", + "integrity": "sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==", + "requires": { + "http-proxy": "^1.17.0", + "is-glob": "^4.0.0", + "lodash": "^4.17.11", + "micromatch": "^3.1.10" + }, + "dependencies": { + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==" + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + } + } + }, + "https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==" + }, + "https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "requires": { + "agent-base": "6", + "debug": "4" + } + }, + "human-signals": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-3.0.1.tgz", + "integrity": "sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ==", + "dev": true + }, + "husky": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.2.tgz", + "integrity": "sha512-Tkv80jtvbnkK3mYWxPZePGFpQ/tT3HNSs/sasF9P2YfkMezDl3ON37YN6jUUI4eTg5LcyVynlb6r4eyvOmspvg==", + "dev": true + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "icss-utils": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", + "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", + "requires": { + "postcss": "^7.0.14" + } + }, + "identity-obj-proxy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/identity-obj-proxy/-/identity-obj-proxy-3.0.0.tgz", + "integrity": "sha512-00n6YnVHKrinT9t0d9+5yZC6UBNJANpYEQvL2LlX6Ab9lnmxzIRcEmTPuyGScvl1+jKuCICX1Z0Ab1pPKKdikA==", + "requires": { + "harmony-reflect": "^1.4.6" + } + }, + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" + }, + "iferr": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", + "integrity": "sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA==" + }, + "ignore": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", + "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==" + }, + "immer": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/immer/-/immer-8.0.1.tgz", + "integrity": "sha512-aqXhGP7//Gui2+UrEtvxZxSquQVXTpZ7KDxfCcKAF3Vysvw0CViVaW9RZ1j1xlIYqaaaipBoqdqeibkc18PNvA==" + }, + "immutable": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", + "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", + "devOptional": true + }, + "import-cwd": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz", + "integrity": "sha512-Ew5AZzJQFqrOV5BTW3EIoHAnoie1LojZLXKcCQ/yTRyVZosBhK1x1ViYjHGf5pAFOq8ZyChZp6m/fSN7pJyZtg==", + "requires": { + "import-from": "^2.1.0" + } + }, + "import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, + "import-from": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz", + "integrity": "sha512-0vdnLL2wSGnhlRmzHJAg5JHjt1l2vYhzJ7tNLGbeVg0fse56tpGaH0uzH+r9Slej+BSXXEHvBKDEnVSLLE9/+w==", + "requires": { + "resolve-from": "^3.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==" + } + } + }, + "import-lazy": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", + "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", + "dev": true + }, + "import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "requires": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "dependencies": { + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "requires": { + "find-up": "^4.0.0" + } + } + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==" + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" + }, + "indexes-of": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", + "integrity": "sha512-bup+4tap3Hympa+JBJUG7XuOsdNQ6fxt0MHyXMKuLBKn0OqsTfvUxkUrroEX1+B2VsSHvCjiIcZVxRtYa4nllA==" + }, + "infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==" + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "internal-ip": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz", + "integrity": "sha512-S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg==", + "requires": { + "default-gateway": "^4.2.0", + "ipaddr.js": "^1.9.0" + } + }, + "internal-slot": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "requires": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + } + }, + "ip": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==" + }, + "ip-regex": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", + "integrity": "sha512-58yWmlHpp7VYfcdTwMTvwMmqx/Elfxjd9RXTDyMsbL7lLWmhMylLEqiYVLKuLzOZqVgiWXD9MfR62Vv89VRxkw==" + }, + "ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" + }, + "is-absolute-url": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-2.1.0.tgz", + "integrity": "sha512-vOx7VprsKyllwjSkLV79NIhpyLfr3jAp7VaTCMXOJHu4m0Ew1CZ2fcjASwmV1jI3BWuWHB013M48eyeldk9gYg==" + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + }, + "is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "requires": { + "has-bigints": "^1.0.1" + } + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "devOptional": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==" + }, + "is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "requires": { + "ci-info": "^2.0.0" + }, + "dependencies": { + "ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" + } + } + }, + "is-color-stop": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-color-stop/-/is-color-stop-1.1.0.tgz", + "integrity": "sha512-H1U8Vz0cfXNujrJzEcvvwMDW9Ra+biSYA3ThdQvAnMLJkEHQXn6bWzLkxHtVYJ+Sdbx0b6finn3jZiaVe7MAHA==", + "requires": { + "css-color-names": "^0.0.4", + "hex-color-regex": "^1.1.0", + "hsl-regex": "^1.0.0", + "hsla-regex": "^1.0.0", + "rgb-regex": "^1.0.1", + "rgba-regex": "^1.0.0" + } + }, + "is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "requires": { + "has": "^1.0.3" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "is-directory": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", + "integrity": "sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw==" + }, + "is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==" + }, + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "requires": { + "is-plain-object": "^2.0.4" + }, + "dependencies": { + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "requires": { + "isobject": "^3.0.1" + } + } + } + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==" + }, + "is-fullwidth-code-point": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", + "dev": true + }, + "is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==" + }, + "is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==" + }, + "is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==" + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" + }, + "is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==" + }, + "is-path-cwd": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==" + }, + "is-path-in-cwd": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz", + "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==", + "requires": { + "is-path-inside": "^2.1.0" + } + }, + "is-path-inside": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", + "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", + "requires": { + "path-is-inside": "^1.0.2" + } + }, + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==" + }, + "is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "dev": true + }, + "is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==" + }, + "is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==" + }, + "is-resolvable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", + "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==" + }, + "is-root": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", + "integrity": "sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==" + }, + "is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "requires": { + "call-bind": "^1.0.2" + } + }, + "is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "dev": true + }, + "is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "requires": { + "has-symbols": "^1.0.2" + } + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" + }, + "is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "requires": { + "call-bind": "^1.0.2" + } + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" + }, + "is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "requires": { + "is-docker": "^2.0.0" + } + }, + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==" + }, + "istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==" + }, + "istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "requires": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "requires": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" + }, + "dependencies": { + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "requires": { + "semver": "^6.0.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "requires": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + } + }, + "istanbul-reports": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", + "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", + "requires": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + } + }, + "jest": { + "version": "26.6.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-26.6.0.tgz", + "integrity": "sha512-jxTmrvuecVISvKFFhOkjsWRZV7sFqdSUAd1ajOKY+/QE/aLBVstsJ/dX8GczLzwiT6ZEwwmZqtCUHLHHQVzcfA==", + "requires": { + "@jest/core": "^26.6.0", + "import-local": "^3.0.2", + "jest-cli": "^26.6.0" + } + }, + "jest-changed-files": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-26.6.2.tgz", + "integrity": "sha512-fDS7szLcY9sCtIip8Fjry9oGf3I2ht/QT21bAHm5Dmf0mD4X3ReNUf17y+bO6fR8WgbIZTlbyG1ak/53cbRzKQ==", + "requires": { + "@jest/types": "^26.6.2", + "execa": "^4.0.0", + "throat": "^5.0.0" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "execa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", + "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", + "requires": { + "cross-spawn": "^7.0.0", + "get-stream": "^5.0.0", + "human-signals": "^1.1.1", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.0", + "onetime": "^5.1.0", + "signal-exit": "^3.0.2", + "strip-final-newline": "^2.0.0" + } + }, + "get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "requires": { + "pump": "^3.0.0" + } + }, + "human-signals": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", + "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==" + }, + "is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==" + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==" + }, + "npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "requires": { + "path-key": "^3.0.0" + } + }, + "onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "requires": { + "mimic-fn": "^2.1.0" + } + }, + "strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==" + } + } + }, + "jest-circus": { + "version": "26.6.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-26.6.0.tgz", + "integrity": "sha512-L2/Y9szN6FJPWFK8kzWXwfp+FOR7xq0cUL4lIsdbIdwz3Vh6P1nrpcqOleSzr28zOtSHQNV9Z7Tl+KkuK7t5Ng==", + "requires": { + "@babel/traverse": "^7.1.0", + "@jest/environment": "^26.6.0", + "@jest/test-result": "^26.6.0", + "@jest/types": "^26.6.0", + "@types/babel__traverse": "^7.0.4", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "expect": "^26.6.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^26.6.0", + "jest-matcher-utils": "^26.6.0", + "jest-message-util": "^26.6.0", + "jest-runner": "^26.6.0", + "jest-runtime": "^26.6.0", + "jest-snapshot": "^26.6.0", + "jest-util": "^26.6.0", + "pretty-format": "^26.6.0", + "stack-utils": "^2.0.2", + "throat": "^5.0.0" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "diff-sequences": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz", + "integrity": "sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==" + }, + "expect": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/expect/-/expect-26.6.2.tgz", + "integrity": "sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA==", + "requires": { + "@jest/types": "^26.6.2", + "ansi-styles": "^4.0.0", + "jest-get-type": "^26.3.0", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-regex-util": "^26.0.0" + } + }, + "jest-diff": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz", + "integrity": "sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==", + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + } + }, + "jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==" + }, + "jest-matcher-utils": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz", + "integrity": "sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw==", + "requires": { + "chalk": "^4.0.0", + "jest-diff": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + } + }, + "jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "requires": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + } + }, + "jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + } + }, + "pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "requires": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + } + } + }, + "jest-cli": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-26.6.3.tgz", + "integrity": "sha512-GF9noBSa9t08pSyl3CY4frMrqp+aQXFGFkf5hEPbh/pIUFYWMK6ZLTfbmadxJVcJrdRoChlWQsA2VkJcDFK8hg==", + "requires": { + "@jest/core": "^26.6.3", + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.4", + "import-local": "^3.0.2", + "is-ci": "^2.0.0", + "jest-config": "^26.6.3", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "prompts": "^2.0.1", + "yargs": "^15.4.1" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + } + } + } + }, + "jest-config": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-26.6.3.tgz", + "integrity": "sha512-t5qdIj/bCj2j7NFVHb2nFB4aUdfucDn3JRKgrZnplb8nieAirAzRSHP8uDEd+qV6ygzg9Pz4YG7UTJf94LPSyg==", + "requires": { + "@babel/core": "^7.1.0", + "@jest/test-sequencer": "^26.6.3", + "@jest/types": "^26.6.2", + "babel-jest": "^26.6.3", + "chalk": "^4.0.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.4", + "jest-environment-jsdom": "^26.6.2", + "jest-environment-node": "^26.6.2", + "jest-get-type": "^26.3.0", + "jest-jasmine2": "^26.6.3", + "jest-regex-util": "^26.0.0", + "jest-resolve": "^26.6.2", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==" + }, + "jest-resolve": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.6.2.tgz", + "integrity": "sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ==", + "requires": { + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^26.6.2", + "read-pkg-up": "^7.0.1", + "resolve": "^1.18.1", + "slash": "^3.0.0" + } + }, + "jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + } + }, + "pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "requires": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + } + } + }, + "jest-diff": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.3.1.tgz", + "integrity": "sha512-vU8vyiO7568tmin2lA3r2DP8oRvzhvRcD4DjpXc6uGveQodyk7CKLhQlCSiwgx3g0pFaE88/KLZ0yaTWMc4Uiw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^29.3.1", + "jest-get-type": "^29.2.0", + "pretty-format": "^29.3.1" + } + }, + "jest-docblock": { + "version": "26.0.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-26.0.0.tgz", + "integrity": "sha512-RDZ4Iz3QbtRWycd8bUEPxQsTlYazfYn/h5R65Fc6gOfwozFhoImx+affzky/FFBuqISPTqjXomoIGJVKBWoo0w==", + "requires": { + "detect-newline": "^3.0.0" + } + }, + "jest-each": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-26.6.2.tgz", + "integrity": "sha512-Mer/f0KaATbjl8MCJ+0GEpNdqmnVmDYqCTJYTvoo7rqmRiDllmp2AYN+06F93nXcY3ur9ShIjS+CO/uD+BbH4A==", + "requires": { + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "jest-get-type": "^26.3.0", + "jest-util": "^26.6.2", + "pretty-format": "^26.6.2" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==" + }, + "jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + } + }, + "pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "requires": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + } + } + }, + "jest-environment-jsdom": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-26.6.2.tgz", + "integrity": "sha512-jgPqCruTlt3Kwqg5/WVFyHIOJHsiAvhcp2qiR2QQstuG9yWox5+iHpU3ZrcBxW14T4fe5Z68jAfLRh7joCSP2Q==", + "requires": { + "@jest/environment": "^26.6.2", + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2", + "jsdom": "^16.4.0" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + } + } + } + }, + "jest-environment-node": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-26.6.2.tgz", + "integrity": "sha512-zhtMio3Exty18dy8ee8eJ9kjnRyZC1N4C1Nt/VShN1apyXc8rWGtJ9lI7vqiWcyyXS4BVSEn9lxAM2D+07/Tag==", + "requires": { + "@jest/environment": "^26.6.2", + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + } + } + } + }, + "jest-get-type": { + "version": "29.2.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.2.0.tgz", + "integrity": "sha512-uXNJlg8hKFEnDgFsrCjznB+sTxdkuqiCL6zMgA75qEbAJjJYTs9XPrvDctrEig2GDow22T/LvHgO57iJhXB/UA==", + "dev": true + }, + "jest-haste-map": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-26.6.2.tgz", + "integrity": "sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w==", + "requires": { + "@jest/types": "^26.6.2", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "fsevents": "^2.1.2", + "graceful-fs": "^4.2.4", + "jest-regex-util": "^26.0.0", + "jest-serializer": "^26.6.2", + "jest-util": "^26.6.2", + "jest-worker": "^26.6.2", + "micromatch": "^4.0.2", + "sane": "^4.0.3", + "walker": "^1.0.7" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + } + }, + "jest-worker": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", + "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" + } + } + } + }, + "jest-jasmine2": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-26.6.3.tgz", + "integrity": "sha512-kPKUrQtc8aYwBV7CqBg5pu+tmYXlvFlSFYn18ev4gPFtrRzB15N2gW/Roew3187q2w2eHuu0MU9TJz6w0/nPEg==", + "requires": { + "@babel/traverse": "^7.1.0", + "@jest/environment": "^26.6.2", + "@jest/source-map": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^26.6.2", + "is-generator-fn": "^2.0.0", + "jest-each": "^26.6.2", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-runtime": "^26.6.3", + "jest-snapshot": "^26.6.2", + "jest-util": "^26.6.2", + "pretty-format": "^26.6.2", + "throat": "^5.0.0" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "diff-sequences": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz", + "integrity": "sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==" + }, + "expect": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/expect/-/expect-26.6.2.tgz", + "integrity": "sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA==", + "requires": { + "@jest/types": "^26.6.2", + "ansi-styles": "^4.0.0", + "jest-get-type": "^26.3.0", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-regex-util": "^26.0.0" + } + }, + "jest-diff": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz", + "integrity": "sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==", + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + } + }, + "jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==" + }, + "jest-matcher-utils": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz", + "integrity": "sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw==", + "requires": { + "chalk": "^4.0.0", + "jest-diff": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + } + }, + "jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "requires": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + } + }, + "jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + } + }, + "pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "requires": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + } + } + }, + "jest-leak-detector": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-26.6.2.tgz", + "integrity": "sha512-i4xlXpsVSMeKvg2cEKdfhh0H39qlJlP5Ex1yQxwF9ubahboQYMgTtz5oML35AVA3B4Eu+YsmwaiKVev9KCvLxg==", + "requires": { + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==" + }, + "pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "requires": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + } + } + }, + "jest-matcher-utils": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.3.1.tgz", + "integrity": "sha512-fkRMZUAScup3txIKfMe3AIZZmPEjWEdsPJFK3AIy5qRohWqQFg1qrmKfYXR9qEkNc7OdAu2N4KPHibEmy4HPeQ==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "jest-diff": "^29.3.1", + "jest-get-type": "^29.2.0", + "pretty-format": "^29.3.1" + } + }, + "jest-message-util": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.3.1.tgz", + "integrity": "sha512-lMJTbgNcDm5z+6KDxWtqOFWlGQxD6XaYwBqHR8kmpkP+WWWG90I35kdtQHY67Ay5CSuydkTBbJG+tH9JShFCyA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.3.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.3.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + } + }, + "jest-mock": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-26.6.2.tgz", + "integrity": "sha512-YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew==", + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + } + } + }, + "jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "requires": {} + }, + "jest-regex-util": { + "version": "26.0.0", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-26.0.0.tgz", + "integrity": "sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A==" + }, + "jest-resolve": { + "version": "26.6.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.6.0.tgz", + "integrity": "sha512-tRAz2bwraHufNp+CCmAD8ciyCpXCs1NQxB5EJAmtCFy6BN81loFEGWKzYu26Y62lAJJe4X4jg36Kf+NsQyiStQ==", + "requires": { + "@jest/types": "^26.6.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^26.6.0", + "read-pkg-up": "^7.0.1", + "resolve": "^1.17.0", + "slash": "^3.0.0" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + } + } + } + }, + "jest-resolve-dependencies": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-26.6.3.tgz", + "integrity": "sha512-pVwUjJkxbhe4RY8QEWzN3vns2kqyuldKpxlxJlzEYfKSvY6/bMvxoFrYYzUO1Gx28yKWN37qyV7rIoIp2h8fTg==", + "requires": { + "@jest/types": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-snapshot": "^26.6.2" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + } + } + }, + "jest-runner": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-26.6.3.tgz", + "integrity": "sha512-atgKpRHnaA2OvByG/HpGA4g6CSPS/1LK0jK3gATJAoptC1ojltpmVlYC3TYgdmGp+GLuhzpH30Gvs36szSL2JQ==", + "requires": { + "@jest/console": "^26.6.2", + "@jest/environment": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.7.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.4", + "jest-config": "^26.6.3", + "jest-docblock": "^26.0.0", + "jest-haste-map": "^26.6.2", + "jest-leak-detector": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-resolve": "^26.6.2", + "jest-runtime": "^26.6.3", + "jest-util": "^26.6.2", + "jest-worker": "^26.6.2", + "source-map-support": "^0.5.6", + "throat": "^5.0.0" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "requires": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + } + }, + "jest-resolve": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.6.2.tgz", + "integrity": "sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ==", + "requires": { + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^26.6.2", + "read-pkg-up": "^7.0.1", + "resolve": "^1.18.1", + "slash": "^3.0.0" + } + }, + "jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + } + }, + "jest-worker": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", + "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" + } + }, + "pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "requires": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + } + } + }, + "jest-runtime": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-26.6.3.tgz", + "integrity": "sha512-lrzyR3N8sacTAMeonbqpnSka1dHNux2uk0qqDXVkMv2c/A3wYnvQ4EXuI013Y6+gSKSCxdaczvf4HF0mVXHRdw==", + "requires": { + "@jest/console": "^26.6.2", + "@jest/environment": "^26.6.2", + "@jest/fake-timers": "^26.6.2", + "@jest/globals": "^26.6.2", + "@jest/source-map": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0", + "cjs-module-lexer": "^0.6.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.4", + "jest-config": "^26.6.3", + "jest-haste-map": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-mock": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-resolve": "^26.6.2", + "jest-snapshot": "^26.6.2", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "slash": "^3.0.0", + "strip-bom": "^4.0.0", + "yargs": "^15.4.1" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "requires": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + } + }, + "jest-resolve": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.6.2.tgz", + "integrity": "sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ==", + "requires": { + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^26.6.2", + "read-pkg-up": "^7.0.1", + "resolve": "^1.18.1", + "slash": "^3.0.0" + } + }, + "jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + } + }, + "pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "requires": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + } + } + }, + "jest-serializer": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-26.6.2.tgz", + "integrity": "sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g==", + "requires": { + "@types/node": "*", + "graceful-fs": "^4.2.4" + } + }, + "jest-snapshot": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-26.6.2.tgz", + "integrity": "sha512-OLhxz05EzUtsAmOMzuupt1lHYXCNib0ECyuZ/PZOx9TrZcC8vL0x+DUG3TL+GLX3yHG45e6YGjIm0XwDc3q3og==", + "requires": { + "@babel/types": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.0.0", + "chalk": "^4.0.0", + "expect": "^26.6.2", + "graceful-fs": "^4.2.4", + "jest-diff": "^26.6.2", + "jest-get-type": "^26.3.0", + "jest-haste-map": "^26.6.2", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-resolve": "^26.6.2", + "natural-compare": "^1.4.0", + "pretty-format": "^26.6.2", + "semver": "^7.3.2" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "diff-sequences": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz", + "integrity": "sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==" + }, + "expect": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/expect/-/expect-26.6.2.tgz", + "integrity": "sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA==", + "requires": { + "@jest/types": "^26.6.2", + "ansi-styles": "^4.0.0", + "jest-get-type": "^26.3.0", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-regex-util": "^26.0.0" + } + }, + "jest-diff": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz", + "integrity": "sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==", + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + } + }, + "jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==" + }, + "jest-matcher-utils": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz", + "integrity": "sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw==", + "requires": { + "chalk": "^4.0.0", + "jest-diff": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + } + }, + "jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "requires": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + } + }, + "jest-resolve": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.6.2.tgz", + "integrity": "sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ==", + "requires": { + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^26.6.2", + "read-pkg-up": "^7.0.1", + "resolve": "^1.18.1", + "slash": "^3.0.0" + } + }, + "jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + } + }, + "pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "requires": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + } + } + }, + "jest-util": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.3.1.tgz", + "integrity": "sha512-7YOVZaiX7RJLv76ZfHt4nbNEzzTRiMW/IiOG7ZOKmTXmoGBxUDefgMAxQubu6WPVqP5zSzAdZG0FfLcC7HOIFQ==", + "dev": true, + "requires": { + "@jest/types": "^29.3.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + } + }, + "jest-validate": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-26.6.2.tgz", + "integrity": "sha512-NEYZ9Aeyj0i5rQqbq+tpIOom0YS1u2MVu6+euBsvpgIme+FOfRmoC4R5p0JiAUpaFvFy24xgrpMknarR/93XjQ==", + "requires": { + "@jest/types": "^26.6.2", + "camelcase": "^6.0.0", + "chalk": "^4.0.0", + "jest-get-type": "^26.3.0", + "leven": "^3.1.0", + "pretty-format": "^26.6.2" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==" + }, + "pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "requires": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + } + } + }, + "jest-watch-typeahead": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/jest-watch-typeahead/-/jest-watch-typeahead-0.6.1.tgz", + "integrity": "sha512-ITVnHhj3Jd/QkqQcTqZfRgjfyRhDFM/auzgVo2RKvSwi18YMvh0WvXDJFoFED6c7jd/5jxtu4kSOb9PTu2cPVg==", + "requires": { + "ansi-escapes": "^4.3.1", + "chalk": "^4.0.0", + "jest-regex-util": "^26.0.0", + "jest-watcher": "^26.3.0", + "slash": "^3.0.0", + "string-length": "^4.0.1", + "strip-ansi": "^6.0.0" + } + }, + "jest-watcher": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-26.6.2.tgz", + "integrity": "sha512-WKJob0P/Em2csiVthsI68p6aGKTIcsfjH9Gsx1f0A3Italz43e3ho0geSAVsmj09RWOELP1AZ/DXyJgOgDKxXQ==", + "requires": { + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "jest-util": "^26.6.2", + "string-length": "^4.0.1" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + } + } + } + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "dependencies": { + "supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "js-sha256": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/js-sha256/-/js-sha256-0.9.0.tgz", + "integrity": "sha512-sga3MHh9sgQN2+pJ9VYZ+1LPwXOxuBJBA5nrR5/ofPfuiJBE2hnjsaN8se8JznOmGLN2p49Pe5U/ttafcs/apA==" + }, + "js-sha3": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" + }, + "js-sha512": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha512/-/js-sha512-0.8.0.tgz", + "integrity": "sha512-PWsmefG6Jkodqt+ePTvBZCSMFgN7Clckjd0O7su3I0+BW2QWUTJNzjktHsztGLhncP2h8mcF9V9Y2Ha59pAViQ==" + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "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==", + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "requires": { + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" + }, + "dependencies": { + "acorn": { + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==" + }, + "tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "requires": { + "punycode": "^2.1.1" + } + }, + "whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "requires": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + } + } + } + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==" + }, + "json-bigint": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz", + "integrity": "sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==", + "requires": { + "bignumber.js": "^9.0.0" + } + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" + }, + "json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==" + }, + "json5": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", + "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==" + }, + "jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "jsx-ast-utils": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz", + "integrity": "sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==", + "requires": { + "array-includes": "^3.1.5", + "object.assign": "^4.1.3" + } + }, + "killable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz", + "integrity": "sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==" + }, + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" + }, + "kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==" + }, + "klona": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.5.tgz", + "integrity": "sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==" + }, + "known-css-properties": { + "version": "0.26.0", + "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.26.0.tgz", + "integrity": "sha512-5FZRzrZzNTBruuurWpvZnvP9pum+fe0HcK8z/ooo+U+Hmp4vtbyp1/QDsqmufirXy4egGzbaH/y2uCZf+6W5Kg==", + "dev": true + }, + "language-subtag-registry": { + "version": "0.3.22", + "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz", + "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==" + }, + "language-tags": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.5.tgz", + "integrity": "sha512-qJhlO9cGXi6hBGKoxEG/sKZDAHD5Hnu9Hs4WbOY3pCWXDhw0N8x1NenNzm2EnNLkLkk7J2SdxAkDSbb6ftT+UQ==", + "requires": { + "language-subtag-registry": "~0.3.2" + } + }, + "last-call-webpack-plugin": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/last-call-webpack-plugin/-/last-call-webpack-plugin-3.0.0.tgz", + "integrity": "sha512-7KI2l2GIZa9p2spzPIVZBYyNKkN+e/SQPpnjlTiPhdbDW3F86tdKKELxKpzJ5sgU19wQWsACULZmpTPYHeWO5w==", + "requires": { + "lodash": "^4.17.5", + "webpack-sources": "^1.1.0" + } + }, + "ldjson-stream": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ldjson-stream/-/ldjson-stream-1.2.1.tgz", + "integrity": "sha512-xw/nNEXafuPSLu8NjjG3+atVVw+8U1APZAQylmwQn19Hgw6rC7QjHvP6MupnHWCrzSm9m0xs5QWkCLuRvBPjgQ==", + "dev": true, + "requires": { + "split2": "^0.2.1", + "through2": "^0.6.1" + }, + "dependencies": { + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true + }, + "through2": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", + "integrity": "sha512-RkK/CCESdTKQZHdmKICijdKKsCRVHs5KsLZ6pACAmF/1GPUQhonHSXWNERctxEp7RmvjdNbZTL5z9V7nSCXKcg==", + "dev": true, + "requires": { + "readable-stream": ">=1.0.33-1 <1.1.0-0", + "xtend": ">=4.0.0 <4.1.0-0" + } + } + } + }, + "leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==" + }, + "levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "requires": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + } + }, + "lilconfig": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.5.tgz", + "integrity": "sha512-xaYmXZtTHPAw5m+xLN8ab9C+3a8YmV3asNSPOATITbtwrfbwaLJj8h66H1WMIpALCkqsIzK3h7oQ+PdX+LQ9Eg==", + "dev": true + }, + "lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + }, + "lint-staged": { + "version": "13.0.3", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-13.0.3.tgz", + "integrity": "sha512-9hmrwSCFroTSYLjflGI8Uk+GWAwMB4OlpU4bMJEAT5d/llQwtYKoim4bLOyLCuWFAhWEupE0vkIFqtw/WIsPug==", + "dev": true, + "requires": { + "cli-truncate": "^3.1.0", + "colorette": "^2.0.17", + "commander": "^9.3.0", + "debug": "^4.3.4", + "execa": "^6.1.0", + "lilconfig": "2.0.5", + "listr2": "^4.0.5", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-inspect": "^1.12.2", + "pidtree": "^0.6.0", + "string-argv": "^0.3.1", + "yaml": "^2.1.1" + }, + "dependencies": { + "commander": { + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.4.1.tgz", + "integrity": "sha512-5EEkTNyHNGFPD2H+c/dXXfQZYa/scCKasxWcXJaWnNJ99pnQN9Vnmqow+p+PlFPE63Q6mThaZws1T+HxfpgtPw==", + "dev": true + } + } + }, + "listr2": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-4.0.5.tgz", + "integrity": "sha512-juGHV1doQdpNT3GSTs9IUN43QJb7KHdF9uqg7Vufs/tG9VTzpFphqF4pm/ICdAABGQxsyNn9CiYA3StkI6jpwA==", + "dev": true, + "requires": { + "cli-truncate": "^2.1.0", + "colorette": "^2.0.16", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rfdc": "^1.3.0", + "rxjs": "^7.5.5", + "through": "^2.3.8", + "wrap-ansi": "^7.0.0" + }, + "dependencies": { + "cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "requires": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + } + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + } + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + } + } + }, + "loader-runner": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", + "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==" + }, + "loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "requires": { + "p-locate": "^4.1.0" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "lodash._reinterpolate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", + "integrity": "sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA==" + }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" + }, + "lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" + }, + "lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==" + }, + "lodash.template": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz", + "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==", + "requires": { + "lodash._reinterpolate": "^3.0.0", + "lodash.templatesettings": "^4.0.0" + } + }, + "lodash.templatesettings": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz", + "integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==", + "requires": { + "lodash._reinterpolate": "^3.0.0" + } + }, + "lodash.truncate": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", + "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==" + }, + "lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==" + }, + "log-update": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", + "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", + "dev": true, + "requires": { + "ansi-escapes": "^4.3.0", + "cli-cursor": "^3.1.0", + "slice-ansi": "^4.0.0", + "wrap-ansi": "^6.2.0" + }, + "dependencies": { + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + } + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + } + } + }, + "loglevel": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.8.1.tgz", + "integrity": "sha512-tCRIJM51SHjAayKwC+QAg8hT8vg6z7GSgLJKGvzuPb1Wc+hLzqtuVLxp6/HzSPOozuK+8ErAhy7U/sVzw8Dgfg==" + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "lottie-react": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/lottie-react/-/lottie-react-2.3.1.tgz", + "integrity": "sha512-8cxd6XZZtECT6LoAhCftRdYrEpHxiouvB5EPiYA+TtCG5LHNYAdMS9IVIHcxKtWnpo7x16QfCLj1XLXZpaN81A==", + "requires": { + "lottie-web": "^5.9.4" + } + }, + "lottie-web": { + "version": "5.9.6", + "resolved": "https://registry.npmjs.org/lottie-web/-/lottie-web-5.9.6.tgz", + "integrity": "sha512-JFs7KsHwflugH5qIXBpB4905yC1Sub2MZWtl/elvO/QC6qj1ApqbUZJyjzJseJUtVpgiDaXQLjBlIJGS7UUUXA==" + }, + "lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "requires": { + "tslib": "^2.0.3" + } + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, + "magic-string": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", + "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", + "requires": { + "sourcemap-codec": "^1.4.8" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + } + } + }, + "makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "requires": { + "tmpl": "1.0.5" + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==" + }, + "map-obj": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", + "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==", + "requires": { + "object-visit": "^1.0.0" + } + }, + "mathml-tag-names": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz", + "integrity": "sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==", + "dev": true + }, + "md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "mdn-data": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", + "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==" + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==" + }, + "memory-fs": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", + "integrity": "sha512-cda4JKCxReDXFXRqOHPQscuIYg1PvxbE2S2GP45rnwfEK+vZaXC8C1OFvdHIbgw0DLzowXGVoxLaAmlgRy14GQ==", + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "meow": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-9.0.0.tgz", + "integrity": "sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==", + "dev": true, + "requires": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize": "^1.2.0", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.18.0", + "yargs-parser": "^20.2.3" + }, + "dependencies": { + "hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "dev": true, + "requires": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + } + }, + "type-fest": { + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", + "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", + "dev": true + } + } + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + }, + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==" + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==" + }, + "microevent.ts": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/microevent.ts/-/microevent.ts-0.1.1.tgz", + "integrity": "sha512-jo1OfR4TaEwd5HOrt5+tAZ9mqT4jmpNAusXtyfNzqVm9uiSYFZlKM1wYL4oU7azZW/PxQW53wM0S6OR1JHNa2g==" + }, + "micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "requires": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + } + }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "requires": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + } + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" + }, + "mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" + }, + "mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "requires": { + "mime-db": "1.52.0" + } + }, + "mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "dev": true + }, + "min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true + }, + "mini-css-extract-plugin": { + "version": "0.11.3", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.11.3.tgz", + "integrity": "sha512-n9BA8LonkOkW1/zn+IbLPQmovsL0wMb9yx75fMJQZf2X1Zoec9yTZtyMePcyu19wPkmFbzZZA6fLTotpFhQsOA==", + "requires": { + "loader-utils": "^1.1.0", + "normalize-url": "1.9.1", + "schema-utils": "^1.0.0", + "webpack-sources": "^1.1.0" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + } + } + }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==" + }, + "minimist-options": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", + "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0", + "kind-of": "^6.0.3" + }, + "dependencies": { + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", + "dev": true + } + } + }, + "minipass": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz", + "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==", + "requires": { + "yallist": "^4.0.0" + } + }, + "minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "requires": { + "minipass": "^3.0.0" + } + }, + "minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "requires": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + } + }, + "mississippi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", + "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "requires": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^3.0.0", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "requires": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + } + } + }, + "mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + } + }, + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "requires": { + "minimist": "^1.2.6" + } + }, + "move-concurrently": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", + "integrity": "sha512-hdrFxZOycD/g6A6SoI2bB5NA/5NEqD0569+S47WZhPvm46sD50ZHdYaFmnua5lndde9rCHGjmfK7Z8BuCt/PcQ==", + "requires": { + "aproba": "^1.1.1", + "copy-concurrently": "^1.0.0", + "fs-write-stream-atomic": "^1.0.8", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.3" + }, + "dependencies": { + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "requires": { + "glob": "^7.1.3" + } + } + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "multicast-dns": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz", + "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==", + "requires": { + "dns-packet": "^1.3.1", + "thunky": "^1.0.2" + } + }, + "multicast-dns-service-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", + "integrity": "sha512-cnAsSVxIDsYt0v7HmC0hWZFwwXSh+E6PgCrREDuN/EsjgLwA5XRmlMHhSiDPrt6HxY1gTivEa/Zh7GtODoLevQ==" + }, + "multimatch": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-5.0.0.tgz", + "integrity": "sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA==", + "dev": true, + "requires": { + "@types/minimatch": "^3.0.3", + "array-differ": "^3.0.0", + "array-union": "^2.1.0", + "arrify": "^2.0.1", + "minimatch": "^3.0.4" + } + }, + "nan": { + "version": "2.17.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz", + "integrity": "sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==", + "optional": true + }, + "nanoid": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==" + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "native-url": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/native-url/-/native-url-0.2.6.tgz", + "integrity": "sha512-k4bDC87WtgrdD362gZz6zoiXQrl40kYlBmpfmSjwRO1VU0V5ccwJTlxuE72F6m3V0vc1xOf6n3UCP9QyerRqmA==", + "requires": { + "querystring": "^0.2.0" + } + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==" + }, + "natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "devOptional": true, + "peer": true + }, + "negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" + }, + "neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==" + }, + "next-tick": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" + }, + "no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "requires": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "requires": { + "whatwg-url": "^5.0.0" + } + }, + "node-forge": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", + "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==" + }, + "node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==" + }, + "node-libs-browser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", + "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", + "requires": { + "assert": "^1.1.1", + "browserify-zlib": "^0.2.0", + "buffer": "^4.3.0", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.11.0", + "domain-browser": "^1.1.1", + "events": "^3.0.0", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "0.0.1", + "process": "^0.11.10", + "punycode": "^1.2.4", + "querystring-es3": "^0.2.0", + "readable-stream": "^2.3.3", + "stream-browserify": "^2.0.1", + "stream-http": "^2.7.2", + "string_decoder": "^1.0.0", + "timers-browserify": "^2.0.4", + "tty-browserify": "0.0.0", + "url": "^0.11.0", + "util": "^0.11.0", + "vm-browserify": "^1.0.1" + }, + "dependencies": { + "buffer": { + "version": "4.9.2", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", + "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "stream-browserify": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", + "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", + "requires": { + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "node-notifier": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-8.0.2.tgz", + "integrity": "sha512-oJP/9NAdd9+x2Q+rfphB2RJCHjod70RcRLjosiPMMu5gjIfwVnOUGq2nbTjTUbmy0DJ/tFIVT30+Qe3nzl4TJg==", + "optional": true, + "requires": { + "growly": "^1.3.0", + "is-wsl": "^2.2.0", + "semver": "^7.3.2", + "shellwords": "^0.1.1", + "uuid": "^8.3.0", + "which": "^2.0.2" + } + }, + "node-releases": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", + "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==" + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + } + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" + }, + "normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==" + }, + "normalize-url": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-1.9.1.tgz", + "integrity": "sha512-A48My/mtCklowHBlI8Fq2jFWK4tX4lJ5E6ytFsSOq1fzpvT0SQSgKhSg7lN5c2uYFOrUAOQp6zhhJnpp1eMloQ==", + "requires": { + "object-assign": "^4.0.1", + "prepend-http": "^1.0.0", + "query-string": "^4.1.0", + "sort-keys": "^1.0.0" + } + }, + "npm-run-path": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", + "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", + "dev": true, + "requires": { + "path-key": "^4.0.0" + }, + "dependencies": { + "path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "dev": true + } + } + }, + "nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "requires": { + "boolbase": "^1.0.0" + } + }, + "num2fraction": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", + "integrity": "sha512-Y1wZESM7VUThYY+4W+X4ySH2maqcA+p7UR+w8VWNWVAd6lwuXXWz/w/Cz43J/dI2I+PS6wD5N+bJUF+gjWvIqg==" + }, + "nwsapi": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.2.tgz", + "integrity": "sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==", + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "requires": { + "kind-of": "^3.0.2" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "requires": { + "kind-of": "^3.0.2" + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-inspect": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==" + }, + "object-is": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", + "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + } + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==", + "requires": { + "isobject": "^3.0.0" + } + }, + "object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + } + }, + "object.entries": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz", + "integrity": "sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "object.fromentries": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz", + "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "object.getownpropertydescriptors": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.5.tgz", + "integrity": "sha512-yDNzckpM6ntyQiGTik1fKV1DcVDRS+w8bvpWNCBanvH5LfRX9O8WTHqQzG4RZwRAM4I0oU7TV11Lj5v0g20ibw==", + "requires": { + "array.prototype.reduce": "^1.0.5", + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "object.hasown": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.2.tgz", + "integrity": "sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==", + "requires": { + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", + "requires": { + "isobject": "^3.0.1" + } + }, + "object.values": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", + "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" + }, + "on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "requires": { + "ee-first": "1.1.1" + } + }, + "on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==" + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dev": true, + "requires": { + "mimic-fn": "^4.0.0" + } + }, + "open": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", + "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "requires": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + } + }, + "opn": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", + "integrity": "sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==", + "requires": { + "is-wsl": "^1.1.0" + }, + "dependencies": { + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==" + } + } + }, + "optimize-css-assets-webpack-plugin": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.4.tgz", + "integrity": "sha512-wqd6FdI2a5/FdoiCNNkEvLeA//lHHfG24Ln2Xm2qqdIk4aOlsR18jwpyOihqQ8849W3qu2DX8fOYxpvTMj+93A==", + "requires": { + "cssnano": "^4.1.10", + "last-call-webpack-plugin": "^3.0.0" + } + }, + "optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "requires": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + } + }, + "os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==" + }, + "p-each-series": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-2.2.0.tgz", + "integrity": "sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA==" + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==" + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "requires": { + "p-limit": "^2.2.0" + } + }, + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "p-retry": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-3.0.1.tgz", + "integrity": "sha512-XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w==", + "requires": { + "retry": "^0.12.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" + }, + "pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" + }, + "parallel-transform": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", + "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", + "requires": { + "cyclist": "^1.0.1", + "inherits": "^2.0.3", + "readable-stream": "^2.1.5" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "requires": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "requires": { + "callsites": "^3.0.0" + } + }, + "parse-asn1": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", + "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", + "requires": { + "asn1.js": "^5.2.0", + "browserify-aes": "^1.0.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "requires": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + } + }, + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" + }, + "pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "requires": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==" + }, + "path-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", + "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==" + }, + "path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==" + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" + }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==" + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" + }, + "pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "requires": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==" + }, + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==" + }, + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" + }, + "pidtree": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz", + "integrity": "sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==", + "dev": true + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==" + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==", + "requires": { + "pinkie": "^2.0.0" + } + }, + "pirates": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", + "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==" + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "requires": { + "find-up": "^3.0.0" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.0.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==" + } + } + }, + "pkg-up": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", + "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", + "requires": { + "find-up": "^3.0.0" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.0.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==" + } + } + }, + "pnp-webpack-plugin": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz", + "integrity": "sha512-7Wjy+9E3WwLOEL30D+m8TSTF7qJJUJLONBnwQp0518siuMxUQUbgZwssaFX+QKlZkjHZcw/IpZCt/H0srrntSg==", + "requires": { + "ts-pnp": "^1.1.6" + } + }, + "portfinder": { + "version": "1.0.32", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.32.tgz", + "integrity": "sha512-on2ZJVVDXRADWE6jnQaX0ioEylzgBpQk8r55NE4wjXW1ZxO+BgDlY6DXwj20i0V8eB4SenDQ00WEaxfiIQPcxg==", + "requires": { + "async": "^2.6.4", + "debug": "^3.2.7", + "mkdirp": "^0.5.6" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==" + }, + "postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + }, + "postcss-attribute-case-insensitive": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.2.tgz", + "integrity": "sha512-clkFxk/9pcdb4Vkn0hAHq3YnxBQ2p0CGD1dy24jN+reBck+EWxMbxSUqN4Yj7t0w8csl87K6p0gxBe1utkJsYA==", + "requires": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^6.0.2" + } + }, + "postcss-browser-comments": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-browser-comments/-/postcss-browser-comments-3.0.0.tgz", + "integrity": "sha512-qfVjLfq7HFd2e0HW4s1dvU8X080OZdG46fFbIBFjW7US7YPDcWfRvdElvwMJr2LI6hMmD+7LnH2HcmXTs+uOig==", + "requires": { + "postcss": "^7" + } + }, + "postcss-calc": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-7.0.5.tgz", + "integrity": "sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg==", + "requires": { + "postcss": "^7.0.27", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.0.2" + } + }, + "postcss-color-functional-notation": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-2.0.1.tgz", + "integrity": "sha512-ZBARCypjEDofW4P6IdPVTLhDNXPRn8T2s1zHbZidW6rPaaZvcnCS2soYFIQJrMZSxiePJ2XIYTlcb2ztr/eT2g==", + "requires": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + } + }, + "postcss-color-gray": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-color-gray/-/postcss-color-gray-5.0.0.tgz", + "integrity": "sha512-q6BuRnAGKM/ZRpfDascZlIZPjvwsRye7UDNalqVz3s7GDxMtqPY6+Q871liNxsonUw8oC61OG+PSaysYpl1bnw==", + "requires": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.5", + "postcss-values-parser": "^2.0.0" + } + }, + "postcss-color-hex-alpha": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-5.0.3.tgz", + "integrity": "sha512-PF4GDel8q3kkreVXKLAGNpHKilXsZ6xuu+mOQMHWHLPNyjiUBOr75sp5ZKJfmv1MCus5/DWUGcK9hm6qHEnXYw==", + "requires": { + "postcss": "^7.0.14", + "postcss-values-parser": "^2.0.1" + } + }, + "postcss-color-mod-function": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-color-mod-function/-/postcss-color-mod-function-3.0.3.tgz", + "integrity": "sha512-YP4VG+xufxaVtzV6ZmhEtc+/aTXH3d0JLpnYfxqTvwZPbJhWqp8bSY3nfNzNRFLgB4XSaBA82OE4VjOOKpCdVQ==", + "requires": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + } + }, + "postcss-color-rebeccapurple": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-4.0.1.tgz", + "integrity": "sha512-aAe3OhkS6qJXBbqzvZth2Au4V3KieR5sRQ4ptb2b2O8wgvB3SJBsdG+jsn2BZbbwekDG8nTfcCNKcSfe/lEy8g==", + "requires": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + } + }, + "postcss-colormin": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-4.0.3.tgz", + "integrity": "sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw==", + "requires": { + "browserslist": "^4.0.0", + "color": "^3.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + } + } + }, + "postcss-convert-values": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz", + "integrity": "sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ==", + "requires": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + } + } + }, + "postcss-custom-media": { + "version": "7.0.8", + "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-7.0.8.tgz", + "integrity": "sha512-c9s5iX0Ge15o00HKbuRuTqNndsJUbaXdiNsksnVH8H4gdc+zbLzr/UasOwNG6CTDpLFekVY4672eWdiiWu2GUg==", + "requires": { + "postcss": "^7.0.14" + } + }, + "postcss-custom-properties": { + "version": "8.0.11", + "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-8.0.11.tgz", + "integrity": "sha512-nm+o0eLdYqdnJ5abAJeXp4CEU1c1k+eB2yMCvhgzsds/e0umabFrN6HoTy/8Q4K5ilxERdl/JD1LO5ANoYBeMA==", + "requires": { + "postcss": "^7.0.17", + "postcss-values-parser": "^2.0.1" + } + }, + "postcss-custom-selectors": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-5.1.2.tgz", + "integrity": "sha512-DSGDhqinCqXqlS4R7KGxL1OSycd1lydugJ1ky4iRXPHdBRiozyMHrdu0H3o7qNOCiZwySZTUI5MV0T8QhCLu+w==", + "requires": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "dependencies": { + "cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==" + }, + "postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "requires": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "postcss-dir-pseudo-class": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-5.0.0.tgz", + "integrity": "sha512-3pm4oq8HYWMZePJY+5ANriPs3P07q+LW6FAdTlkFH2XqDdP4HeeJYMOzn0HYLhRSjBO3fhiqSwwU9xEULSrPgw==", + "requires": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "dependencies": { + "cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==" + }, + "postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "requires": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "postcss-discard-comments": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz", + "integrity": "sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg==", + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-discard-duplicates": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz", + "integrity": "sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ==", + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-discard-empty": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz", + "integrity": "sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w==", + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-discard-overridden": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz", + "integrity": "sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg==", + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-double-position-gradients": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-1.0.0.tgz", + "integrity": "sha512-G+nV8EnQq25fOI8CH/B6krEohGWnF5+3A6H/+JEpOncu5dCnkS1QQ6+ct3Jkaepw1NGVqqOZH6lqrm244mCftA==", + "requires": { + "postcss": "^7.0.5", + "postcss-values-parser": "^2.0.0" + } + }, + "postcss-env-function": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-2.0.2.tgz", + "integrity": "sha512-rwac4BuZlITeUbiBq60h/xbLzXY43qOsIErngWa4l7Mt+RaSkT7QBjXVGTcBHupykkblHMDrBFh30zchYPaOUw==", + "requires": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + } + }, + "postcss-flexbugs-fixes": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-4.2.1.tgz", + "integrity": "sha512-9SiofaZ9CWpQWxOwRh1b/r85KD5y7GgvsNt1056k6OYLvWUun0czCvogfJgylC22uJTwW1KzY3Gz65NZRlvoiQ==", + "requires": { + "postcss": "^7.0.26" + } + }, + "postcss-focus-visible": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-4.0.0.tgz", + "integrity": "sha512-Z5CkWBw0+idJHSV6+Bgf2peDOFf/x4o+vX/pwcNYrWpXFrSfTkQ3JQ1ojrq9yS+upnAlNRHeg8uEwFTgorjI8g==", + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-focus-within": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-3.0.0.tgz", + "integrity": "sha512-W0APui8jQeBKbCGZudW37EeMCjDeVxKgiYfIIEo8Bdh5SpB9sxds/Iq8SEuzS0Q4YFOlG7EPFulbbxujpkrV2w==", + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-font-variant": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-4.0.1.tgz", + "integrity": "sha512-I3ADQSTNtLTTd8uxZhtSOrTCQ9G4qUVKPjHiDk0bV75QSxXjVWiJVJ2VLdspGUi9fbW9BcjKJoRvxAH1pckqmA==", + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-gap-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-2.0.0.tgz", + "integrity": "sha512-QZSqDaMgXCHuHTEzMsS2KfVDOq7ZFiknSpkrPJY6jmxbugUPTuSzs/vuE5I3zv0WAS+3vhrlqhijiprnuQfzmg==", + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-image-set-function": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-3.0.1.tgz", + "integrity": "sha512-oPTcFFip5LZy8Y/whto91L9xdRHCWEMs3e1MdJxhgt4jy2WYXfhkng59fH5qLXSCPN8k4n94p1Czrfe5IOkKUw==", + "requires": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + } + }, + "postcss-initial": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-3.0.4.tgz", + "integrity": "sha512-3RLn6DIpMsK1l5UUy9jxQvoDeUN4gP939tDcKUHD/kM8SGSKbFAnvkpFpj3Bhtz3HGk1jWY5ZNWX6mPta5M9fg==", + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-lab-function": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-2.0.1.tgz", + "integrity": "sha512-whLy1IeZKY+3fYdqQFuDBf8Auw+qFuVnChWjmxm/UhHWqNHZx+B99EwxTvGYmUBqe3Fjxs4L1BoZTJmPu6usVg==", + "requires": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + } + }, + "postcss-load-config": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.1.2.tgz", + "integrity": "sha512-/rDeGV6vMUo3mwJZmeHfEDvwnTKKqQ0S7OHUi/kJvvtx3aWtyWG2/0ZWnzCt2keEclwN6Tf0DST2v9kITdOKYw==", + "requires": { + "cosmiconfig": "^5.0.0", + "import-cwd": "^2.0.0" + }, + "dependencies": { + "cosmiconfig": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", + "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "requires": { + "import-fresh": "^2.0.0", + "is-directory": "^0.3.1", + "js-yaml": "^3.13.1", + "parse-json": "^4.0.0" + } + }, + "import-fresh": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", + "integrity": "sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==", + "requires": { + "caller-path": "^2.0.0", + "resolve-from": "^3.0.0" + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==" + } + } + }, + "postcss-loader": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-3.0.0.tgz", + "integrity": "sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==", + "requires": { + "loader-utils": "^1.1.0", + "postcss": "^7.0.0", + "postcss-load-config": "^2.0.0", + "schema-utils": "^1.0.0" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + } + } + }, + "postcss-logical": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-3.0.0.tgz", + "integrity": "sha512-1SUKdJc2vuMOmeItqGuNaC+N8MzBWFWEkAnRnLpFYj1tGGa7NqyVBujfRtgNa2gXR+6RkGUiB2O5Vmh7E2RmiA==", + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-media-minmax": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-4.0.0.tgz", + "integrity": "sha512-fo9moya6qyxsjbFAYl97qKO9gyre3qvbMnkOZeZwlsW6XYFsvs2DMGDlchVLfAd8LHPZDxivu/+qW2SMQeTHBw==", + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-media-query-parser": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz", + "integrity": "sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig==", + "dev": true + }, + "postcss-merge-longhand": { + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz", + "integrity": "sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw==", + "requires": { + "css-color-names": "0.0.4", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "stylehacks": "^4.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + } + } + }, + "postcss-merge-rules": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz", + "integrity": "sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ==", + "requires": { + "browserslist": "^4.0.0", + "caniuse-api": "^3.0.0", + "cssnano-util-same-parent": "^4.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0", + "vendors": "^1.0.0" + }, + "dependencies": { + "postcss-selector-parser": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", + "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", + "requires": { + "dot-prop": "^5.2.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "postcss-minify-font-values": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz", + "integrity": "sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg==", + "requires": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + } + } + }, + "postcss-minify-gradients": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz", + "integrity": "sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q==", + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "is-color-stop": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + } + } + }, + "postcss-minify-params": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz", + "integrity": "sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg==", + "requires": { + "alphanum-sort": "^1.0.0", + "browserslist": "^4.0.0", + "cssnano-util-get-arguments": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "uniqs": "^2.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + } + } + }, + "postcss-minify-selectors": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz", + "integrity": "sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g==", + "requires": { + "alphanum-sort": "^1.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0" + }, + "dependencies": { + "postcss-selector-parser": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", + "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", + "requires": { + "dot-prop": "^5.2.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "postcss-modules-extract-imports": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", + "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", + "requires": { + "postcss": "^7.0.5" + } + }, + "postcss-modules-local-by-default": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", + "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", + "requires": { + "icss-utils": "^4.1.1", + "postcss": "^7.0.32", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + } + }, + "postcss-modules-scope": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", + "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", + "requires": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^6.0.0" + } + }, + "postcss-modules-values": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", + "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", + "requires": { + "icss-utils": "^4.0.0", + "postcss": "^7.0.6" + } + }, + "postcss-nesting": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-7.0.1.tgz", + "integrity": "sha512-FrorPb0H3nuVq0Sff7W2rnc3SmIcruVC6YwpcS+k687VxyxO33iE1amna7wHuRVzM8vfiYofXSBHNAZ3QhLvYg==", + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-normalize": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize/-/postcss-normalize-8.0.1.tgz", + "integrity": "sha512-rt9JMS/m9FHIRroDDBGSMsyW1c0fkvOJPy62ggxSHUldJO7B195TqFMqIf+lY5ezpDcYOV4j86aUp3/XbxzCCQ==", + "requires": { + "@csstools/normalize.css": "^10.1.0", + "browserslist": "^4.6.2", + "postcss": "^7.0.17", + "postcss-browser-comments": "^3.0.0", + "sanitize.css": "^10.0.0" + } + }, + "postcss-normalize-charset": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz", + "integrity": "sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g==", + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-normalize-display-values": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz", + "integrity": "sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ==", + "requires": { + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + } + } + }, + "postcss-normalize-positions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz", + "integrity": "sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA==", + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + } + } + }, + "postcss-normalize-repeat-style": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz", + "integrity": "sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q==", + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + } + } + }, + "postcss-normalize-string": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz", + "integrity": "sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA==", + "requires": { + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + } + } + }, + "postcss-normalize-timing-functions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz", + "integrity": "sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A==", + "requires": { + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + } + } + }, + "postcss-normalize-unicode": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz", + "integrity": "sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg==", + "requires": { + "browserslist": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + } + } + }, + "postcss-normalize-url": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz", + "integrity": "sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA==", + "requires": { + "is-absolute-url": "^2.0.0", + "normalize-url": "^3.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "normalize-url": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz", + "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==" + }, + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + } + } + }, + "postcss-normalize-whitespace": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz", + "integrity": "sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA==", + "requires": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + } + } + }, + "postcss-ordered-values": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz", + "integrity": "sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw==", + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + } + } + }, + "postcss-overflow-shorthand": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-2.0.0.tgz", + "integrity": "sha512-aK0fHc9CBNx8jbzMYhshZcEv8LtYnBIRYQD5i7w/K/wS9c2+0NSR6B3OVMu5y0hBHYLcMGjfU+dmWYNKH0I85g==", + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-page-break": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-2.0.0.tgz", + "integrity": "sha512-tkpTSrLpfLfD9HvgOlJuigLuk39wVTbbd8RKcy8/ugV2bNBUW3xU+AIqyxhDrQr1VUj1RmyJrBn1YWrqUm9zAQ==", + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-place": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-4.0.1.tgz", + "integrity": "sha512-Zb6byCSLkgRKLODj/5mQugyuj9bvAAw9LqJJjgwz5cYryGeXfFZfSXoP1UfveccFmeq0b/2xxwcTEVScnqGxBg==", + "requires": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + } + }, + "postcss-preset-env": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-6.7.0.tgz", + "integrity": "sha512-eU4/K5xzSFwUFJ8hTdTQzo2RBLbDVt83QZrAvI07TULOkmyQlnYlpwep+2yIK+K+0KlZO4BvFcleOCCcUtwchg==", + "requires": { + "autoprefixer": "^9.6.1", + "browserslist": "^4.6.4", + "caniuse-lite": "^1.0.30000981", + "css-blank-pseudo": "^0.1.4", + "css-has-pseudo": "^0.10.0", + "css-prefers-color-scheme": "^3.1.1", + "cssdb": "^4.4.0", + "postcss": "^7.0.17", + "postcss-attribute-case-insensitive": "^4.0.1", + "postcss-color-functional-notation": "^2.0.1", + "postcss-color-gray": "^5.0.0", + "postcss-color-hex-alpha": "^5.0.3", + "postcss-color-mod-function": "^3.0.3", + "postcss-color-rebeccapurple": "^4.0.1", + "postcss-custom-media": "^7.0.8", + "postcss-custom-properties": "^8.0.11", + "postcss-custom-selectors": "^5.1.2", + "postcss-dir-pseudo-class": "^5.0.0", + "postcss-double-position-gradients": "^1.0.0", + "postcss-env-function": "^2.0.2", + "postcss-focus-visible": "^4.0.0", + "postcss-focus-within": "^3.0.0", + "postcss-font-variant": "^4.0.0", + "postcss-gap-properties": "^2.0.0", + "postcss-image-set-function": "^3.0.1", + "postcss-initial": "^3.0.0", + "postcss-lab-function": "^2.0.1", + "postcss-logical": "^3.0.0", + "postcss-media-minmax": "^4.0.0", + "postcss-nesting": "^7.0.0", + "postcss-overflow-shorthand": "^2.0.0", + "postcss-page-break": "^2.0.0", + "postcss-place": "^4.0.1", + "postcss-pseudo-class-any-link": "^6.0.0", + "postcss-replace-overflow-wrap": "^3.0.0", + "postcss-selector-matches": "^4.0.0", + "postcss-selector-not": "^4.0.0" + } + }, + "postcss-pseudo-class-any-link": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-6.0.0.tgz", + "integrity": "sha512-lgXW9sYJdLqtmw23otOzrtbDXofUdfYzNm4PIpNE322/swES3VU9XlXHeJS46zT2onFO7V1QFdD4Q9LiZj8mew==", + "requires": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "dependencies": { + "cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==" + }, + "postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "requires": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "postcss-reduce-initial": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz", + "integrity": "sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA==", + "requires": { + "browserslist": "^4.0.0", + "caniuse-api": "^3.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0" + } + }, + "postcss-reduce-transforms": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz", + "integrity": "sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg==", + "requires": { + "cssnano-util-get-match": "^4.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + } + } + }, + "postcss-replace-overflow-wrap": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-3.0.0.tgz", + "integrity": "sha512-2T5hcEHArDT6X9+9dVSPQdo7QHzG4XKclFT8rU5TzJPDN7RIRTbO9c4drUISOVemLj03aezStHCR2AIcr8XLpw==", + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-resolve-nested-selector": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz", + "integrity": "sha512-HvExULSwLqHLgUy1rl3ANIqCsvMS0WHss2UOsXhXnQaZ9VCc2oBvIpXrl00IUFT5ZDITME0o6oiXeiHr2SAIfw==", + "dev": true + }, + "postcss-safe-parser": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-5.0.2.tgz", + "integrity": "sha512-jDUfCPJbKOABhwpUKcqCVbbXiloe/QXMcbJ6Iipf3sDIihEzTqRCeMBfRaOHxhBuTYqtASrI1KJWxzztZU4qUQ==", + "requires": { + "postcss": "^8.1.0" + }, + "dependencies": { + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "postcss": { + "version": "8.4.19", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.19.tgz", + "integrity": "sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==", + "requires": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + } + } + } + }, + "postcss-selector-matches": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-matches/-/postcss-selector-matches-4.0.0.tgz", + "integrity": "sha512-LgsHwQR/EsRYSqlwdGzeaPKVT0Ml7LAT6E75T8W8xLJY62CE4S/l03BWIt3jT8Taq22kXP08s2SfTSzaraoPww==", + "requires": { + "balanced-match": "^1.0.0", + "postcss": "^7.0.2" + } + }, + "postcss-selector-not": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-4.0.1.tgz", + "integrity": "sha512-YolvBgInEK5/79C+bdFMyzqTg6pkYqDbzZIST/PDMqa/o3qtXenD05apBG2jLgT0/BQ77d4U2UK12jWpilqMAQ==", + "requires": { + "balanced-match": "^1.0.0", + "postcss": "^7.0.2" + } + }, + "postcss-selector-parser": { + "version": "6.0.10", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", + "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", + "requires": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + } + }, + "postcss-svgo": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-4.0.3.tgz", + "integrity": "sha512-NoRbrcMWTtUghzuKSoIm6XV+sJdvZ7GZSc3wdBN0W19FTtp2ko8NqLsgoh/m9CzNhU3KLPvQmjIwtaNFkaFTvw==", + "requires": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "svgo": "^1.0.0" + }, + "dependencies": { + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" + } + } + }, + "postcss-unique-selectors": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz", + "integrity": "sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg==", + "requires": { + "alphanum-sort": "^1.0.0", + "postcss": "^7.0.0", + "uniqs": "^2.0.0" + } + }, + "postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + }, + "postcss-values-parser": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", + "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", + "requires": { + "flatten": "^1.0.2", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + }, + "prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==" + }, + "prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha512-PhmXi5XmoyKw1Un4E+opM2KcsJInDvKyuOumcjjw3waw86ZNjHwVUOOWLc4bCzLdcKNaWBH9e99sbWzDQsVaYg==" + }, + "prettier": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.7.1.tgz", + "integrity": "sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==", + "dev": true + }, + "pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==" + }, + "pretty-error": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.2.tgz", + "integrity": "sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==", + "requires": { + "lodash": "^4.17.20", + "renderkid": "^2.0.4" + } + }, + "pretty-format": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.3.1.tgz", + "integrity": "sha512-FyLnmb1cYJV8biEIiRyzRFvs2lry7PPIvOqKVe1GCUEYg4YGmlx1qG9EJNMxArYm7piII4qb8UV1Pncq5dxmcg==", + "dev": true, + "requires": { + "@jest/schemas": "^29.0.0", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true + } + } + }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==" + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==" + }, + "promise": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/promise/-/promise-8.3.0.tgz", + "integrity": "sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg==", + "requires": { + "asap": "~2.0.6" + } + }, + "promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==" + }, + "prompts": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.0.tgz", + "integrity": "sha512-awZAKrk3vN6CroQukBL+R9051a4R3zCZBlJm/HBfrSZ8iTpYix3VX1vU4mveiLpiwmOJT4wokTF9m6HUk4KqWQ==", + "requires": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + } + }, + "prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "requires": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + }, + "dependencies": { + "react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + } + } + }, + "proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "requires": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + } + }, + "prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==" + }, + "psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" + }, + "public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "requires": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + } + } + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "pumpify": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", + "requires": { + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" + }, + "dependencies": { + "pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + } + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + }, + "q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==" + }, + "qrcode-generator": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/qrcode-generator/-/qrcode-generator-1.4.4.tgz", + "integrity": "sha512-HM7yY8O2ilqhmULxGMpcHSF1EhJJ9yBj8gvDEuZ6M+KGJ0YY2hKpnXvRD+hZPLrDVck3ExIGhmPtSdcjC+guuw==" + }, + "qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "requires": { + "side-channel": "^1.0.4" + } + }, + "query-string": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz", + "integrity": "sha512-O2XLNDBIg1DnTOa+2XrIwSiXEV8h2KImXUnjhhn2+UsvZ+Es2uyd5CCRTNQlDGbzUQOW3aYCBx9rVA6dzsiY7Q==", + "requires": { + "object-assign": "^4.1.0", + "strict-uri-encode": "^1.0.0" + } + }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==" + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==" + }, + "querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" + }, + "queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==" + }, + "quick-lru": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", + "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", + "dev": true + }, + "raf": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", + "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", + "requires": { + "performance-now": "^2.1.0" + } + }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "requires": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" + }, + "raw-body": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "requires": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "dependencies": { + "bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" + } + } + }, + "react": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", + "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + }, + "react-app-polyfill": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/react-app-polyfill/-/react-app-polyfill-2.0.0.tgz", + "integrity": "sha512-0sF4ny9v/B7s6aoehwze9vJNWcmCemAUYBVasscVr92+UYiEqDXOxfKjXN685mDaMRNF3WdhHQs76oTODMocFA==", + "requires": { + "core-js": "^3.6.5", + "object-assign": "^4.1.1", + "promise": "^8.1.0", + "raf": "^3.4.1", + "regenerator-runtime": "^0.13.7", + "whatwg-fetch": "^3.4.1" + } + }, + "react-dev-utils": { + "version": "11.0.4", + "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-11.0.4.tgz", + "integrity": "sha512-dx0LvIGHcOPtKbeiSUM4jqpBl3TcY7CDjZdfOIcKeznE7BWr9dg0iPG90G5yfVQ+p/rGNMXdbfStvzQZEVEi4A==", + "requires": { + "@babel/code-frame": "7.10.4", + "address": "1.1.2", + "browserslist": "4.14.2", + "chalk": "2.4.2", + "cross-spawn": "7.0.3", + "detect-port-alt": "1.1.6", + "escape-string-regexp": "2.0.0", + "filesize": "6.1.0", + "find-up": "4.1.0", + "fork-ts-checker-webpack-plugin": "4.1.6", + "global-modules": "2.0.0", + "globby": "11.0.1", + "gzip-size": "5.1.1", + "immer": "8.0.1", + "is-root": "2.1.0", + "loader-utils": "2.0.0", + "open": "^7.0.2", + "pkg-up": "3.1.0", + "prompts": "2.4.0", + "react-error-overlay": "^6.0.9", + "recursive-readdir": "2.2.2", + "shell-quote": "1.7.2", + "strip-ansi": "6.0.0", + "text-table": "0.2.0" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", + "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", + "requires": { + "@babel/highlight": "^7.10.4" + } + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "^1.9.0" + } + }, + "browserslist": { + "version": "4.14.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.14.2.tgz", + "integrity": "sha512-HI4lPveGKUR0x2StIz+2FXfDk9SfVMrxn6PLh1JeGUwcuoDkdKZebWiyLRJ68iIPDpMI4JLVDf7S7XzslgWOhw==", + "requires": { + "caniuse-lite": "^1.0.30001125", + "electron-to-chromium": "^1.3.564", + "escalade": "^3.0.2", + "node-releases": "^1.1.61" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "dependencies": { + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" + } + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "globby": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.1.tgz", + "integrity": "sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ==", + "requires": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.1.1", + "ignore": "^5.1.4", + "merge2": "^1.3.0", + "slash": "^3.0.0" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + }, + "loader-utils": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", + "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + } + }, + "node-releases": { + "version": "1.1.77", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.77.tgz", + "integrity": "sha512-rB1DUFUNAN4Gn9keO2K1efO35IDK7yKHCdCaIMvFO7yUYmmZYeDjnGKle26G4rwj+LKRQpjyUUvMkPglwGCYNQ==" + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "requires": { + "ansi-regex": "^5.0.0" + } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "react-dom": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", + "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "scheduler": "^0.20.2" + } + }, + "react-error-overlay": { + "version": "6.0.9", + "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.9.tgz", + "integrity": "sha512-nQTTcUu+ATDbrSD1BZHr5kgSD4oF8OFjxun8uAaL8RwPBacGBNPf/yAuVVdx17N8XNzRDMrZ9XcKZHCjPW+9ew==" + }, + "react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "react-lifecycles-compat": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", + "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" + }, + "react-modal": { + "version": "3.16.1", + "resolved": "https://registry.npmjs.org/react-modal/-/react-modal-3.16.1.tgz", + "integrity": "sha512-VStHgI3BVcGo7OXczvnJN7yT2TWHJPDXZWyI/a0ssFNhGZWsPmB8cF0z33ewDXq4VfYMO1vXgiv/g8Nj9NDyWg==", + "requires": { + "exenv": "^1.2.0", + "prop-types": "^15.7.2", + "react-lifecycles-compat": "^3.0.0", + "warning": "^4.0.3" + } + }, + "react-qrcode-logo": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/react-qrcode-logo/-/react-qrcode-logo-2.8.0.tgz", + "integrity": "sha512-dbEgjsg6C4tK6+oGmCRDlJ7urQAWqybaGBLJtp8Z6ZYvVUP302HBXk/F7VRk54yWTwzlHwig3VK6HMKCha2YFw==", + "requires": { + "lodash.isequal": "^4.5.0", + "qrcode-generator": "^1.4.1" + } + }, + "react-refresh": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.8.3.tgz", + "integrity": "sha512-X8jZHc7nCMjaCqoU+V2I0cOhNW+QMBwSUkeXnTi8IPe6zaRWfn60ZzvFDZqWPfmSJfjub7dDW1SP0jaHWLu/hg==" + }, + "react-router": { + "version": "6.4.3", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.4.3.tgz", + "integrity": "sha512-BT6DoGn6aV1FVP5yfODMOiieakp3z46P1Fk0RNzJMACzE7C339sFuHebfvWtnB4pzBvXXkHP2vscJzWRuUjTtA==", + "requires": { + "@remix-run/router": "1.0.3" + } + }, + "react-router-dom": { + "version": "6.4.3", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.4.3.tgz", + "integrity": "sha512-MiaYQU8CwVCaOfJdYvt84KQNjT78VF0TJrA17SIQgNHRvLnXDJO6qsFqq8F/zzB1BWZjCFIrQpu4QxcshitziQ==", + "requires": { + "@remix-run/router": "1.0.3", + "react-router": "6.4.3" + } + }, + "react-scripts": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/react-scripts/-/react-scripts-4.0.3.tgz", + "integrity": "sha512-S5eO4vjUzUisvkIPB7jVsKtuH2HhWcASREYWHAQ1FP5HyCv3xgn+wpILAEWkmy+A+tTNbSZClhxjT3qz6g4L1A==", + "requires": { + "@babel/core": "7.12.3", + "@pmmmwh/react-refresh-webpack-plugin": "0.4.3", + "@svgr/webpack": "5.5.0", + "@typescript-eslint/eslint-plugin": "^4.5.0", + "@typescript-eslint/parser": "^4.5.0", + "babel-eslint": "^10.1.0", + "babel-jest": "^26.6.0", + "babel-loader": "8.1.0", + "babel-plugin-named-asset-import": "^0.3.7", + "babel-preset-react-app": "^10.0.0", + "bfj": "^7.0.2", + "camelcase": "^6.1.0", + "case-sensitive-paths-webpack-plugin": "2.3.0", + "css-loader": "4.3.0", + "dotenv": "8.2.0", + "dotenv-expand": "5.1.0", + "eslint": "7.17.0", + "eslint-config-react-app": "^6.0.0", + "eslint-plugin-flowtype": "^5.2.0", + "eslint-plugin-import": "^2.22.1", + "eslint-plugin-jest": "^24.1.0", + "eslint-plugin-jsx-a11y": "^6.3.1", + "eslint-plugin-react": "^7.21.5", + "eslint-plugin-react-hooks": "^4.2.0", + "eslint-plugin-testing-library": "^3.9.2", + "eslint-webpack-plugin": "^2.5.2", + "file-loader": "6.1.1", + "fs-extra": "^9.0.1", + "fsevents": "^2.1.3", + "html-webpack-plugin": "4.5.0", + "identity-obj-proxy": "3.0.0", + "jest": "26.6.0", + "jest-circus": "26.6.0", + "jest-resolve": "26.6.0", + "jest-watch-typeahead": "0.6.1", + "mini-css-extract-plugin": "0.11.3", + "optimize-css-assets-webpack-plugin": "5.0.4", + "pnp-webpack-plugin": "1.6.4", + "postcss-flexbugs-fixes": "4.2.1", + "postcss-loader": "3.0.0", + "postcss-normalize": "8.0.1", + "postcss-preset-env": "6.7.0", + "postcss-safe-parser": "5.0.2", + "prompts": "2.4.0", + "react-app-polyfill": "^2.0.0", + "react-dev-utils": "^11.0.3", + "react-refresh": "^0.8.3", + "resolve": "1.18.1", + "resolve-url-loader": "^3.1.2", + "sass-loader": "^10.0.5", + "semver": "7.3.2", + "style-loader": "1.3.0", + "terser-webpack-plugin": "4.2.3", + "ts-pnp": "1.2.0", + "url-loader": "4.1.1", + "webpack": "4.44.2", + "webpack-dev-server": "3.11.1", + "webpack-manifest-plugin": "2.2.0", + "workbox-webpack-plugin": "5.1.4" + }, + "dependencies": { + "@babel/core": { + "version": "7.12.3", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.3.tgz", + "integrity": "sha512-0qXcZYKZp3/6N2jKYVxZv0aNCsxTSVCiK72DTiTYZAu7sjg73W0/aynWjMbiGd87EQL4WyA8reiJVh92AVla9g==", + "requires": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.12.1", + "@babel/helper-module-transforms": "^7.12.1", + "@babel/helpers": "^7.12.1", + "@babel/parser": "^7.12.3", + "@babel/template": "^7.10.4", + "@babel/traverse": "^7.12.1", + "@babel/types": "^7.12.1", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + } + } + }, + "@pmmmwh/react-refresh-webpack-plugin": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.4.3.tgz", + "integrity": "sha512-br5Qwvh8D2OQqSXpd1g/xqXKnK0r+Jz6qVKBbWmpUcrbGOxUrf39V5oZ1876084CGn18uMdR5uvPqBv9UqtBjQ==", + "requires": { + "ansi-html": "^0.0.7", + "error-stack-parser": "^2.0.6", + "html-entities": "^1.2.1", + "native-url": "^0.2.6", + "schema-utils": "^2.6.5", + "source-map": "^0.7.3" + }, + "dependencies": { + "source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==" + } + } + }, + "@typescript-eslint/eslint-plugin": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.33.0.tgz", + "integrity": "sha512-aINiAxGVdOl1eJyVjaWn/YcVAq4Gi/Yo35qHGCnqbWVz61g39D0h23veY/MA0rFFGfxK7TySg2uwDeNv+JgVpg==", + "requires": { + "@typescript-eslint/experimental-utils": "4.33.0", + "@typescript-eslint/scope-manager": "4.33.0", + "debug": "^4.3.1", + "functional-red-black-tree": "^1.0.1", + "ignore": "^5.1.8", + "regexpp": "^3.1.0", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + }, + "dependencies": { + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "requires": { + "lru-cache": "^6.0.0" + } + } + } + }, + "@typescript-eslint/parser": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.33.0.tgz", + "integrity": "sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA==", + "requires": { + "@typescript-eslint/scope-manager": "4.33.0", + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/typescript-estree": "4.33.0", + "debug": "^4.3.1" + } + }, + "@typescript-eslint/scope-manager": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.33.0.tgz", + "integrity": "sha512-5IfJHpgTsTZuONKbODctL4kKuQje/bzBRkwHE8UOZ4f89Zeddg+EGZs8PD8NcN4LdM3ygHWYB3ukPAYjvl/qbQ==", + "requires": { + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/visitor-keys": "4.33.0" + } + }, + "@typescript-eslint/types": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.33.0.tgz", + "integrity": "sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ==" + }, + "@typescript-eslint/typescript-estree": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.33.0.tgz", + "integrity": "sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA==", + "requires": { + "@typescript-eslint/types": "4.33.0", + "@typescript-eslint/visitor-keys": "4.33.0", + "debug": "^4.3.1", + "globby": "^11.0.3", + "is-glob": "^4.0.1", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + }, + "dependencies": { + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "requires": { + "lru-cache": "^6.0.0" + } + } + } + }, + "@typescript-eslint/visitor-keys": { + "version": "4.33.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.33.0.tgz", + "integrity": "sha512-uqi/2aSz9g2ftcHWf8uLPJA70rUv6yuMW5Bohw+bwcuzaxQIHaKFZCKGoGXIrc9vkTJ3+0txM73K0Hq3d5wgIg==", + "requires": { + "@typescript-eslint/types": "4.33.0", + "eslint-visitor-keys": "^2.0.0" + } + }, + "eslint-config-react-app": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-react-app/-/eslint-config-react-app-6.0.0.tgz", + "integrity": "sha512-bpoAAC+YRfzq0dsTk+6v9aHm/uqnDwayNAXleMypGl6CpxI9oXXscVHo4fk3eJPIn+rsbtNetB4r/ZIidFIE8A==", + "requires": { + "confusing-browser-globals": "^1.0.10" + } + }, + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==" + }, + "resolve": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.18.1.tgz", + "integrity": "sha512-lDfCPaMKfOJXjy0dPayzPdF1phampNWr3qFCjAu+rw/qbQmr5jWH5xN2hwh9QKfw9E5v4hwV7A+jrCmL8yjjqA==", + "requires": { + "is-core-module": "^2.0.0", + "path-parse": "^1.0.6" + } + }, + "semver": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", + "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==" + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==" + }, + "type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "optional": true, + "peer": true + } + } + }, + "react-textarea-autosize": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.3.2.tgz", + "integrity": "sha512-JrMWVgQSaExQByP3ggI1eA8zF4mF0+ddVuX7acUeK2V7bmrpjVOY72vmLz2IXFJSAXoY3D80nEzrn0GWajWK3Q==", + "requires": { + "@babel/runtime": "^7.10.2", + "use-composed-ref": "^1.0.0", + "use-latest": "^1.0.0" + } + }, + "react-tooltip": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/react-tooltip/-/react-tooltip-4.5.0.tgz", + "integrity": "sha512-mJNurq29atce+TJc9Xe+/FHrcEs3K9J7wkjZZXwbK5Yq6uG5SZeKSFHwd0wcRPUipVwx5crmgzSW8Zu1xyvLTQ==", + "requires": { + "prop-types": "^15.8.1", + "uuid": "^7.0.3" + }, + "dependencies": { + "uuid": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-7.0.3.tgz", + "integrity": "sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==" + } + } + }, + "read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "requires": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "dependencies": { + "type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==" + } + } + }, + "read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "requires": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + } + }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "devOptional": true, + "requires": { + "picomatch": "^2.2.1" + } + }, + "realistic-structured-clone": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/realistic-structured-clone/-/realistic-structured-clone-3.0.0.tgz", + "integrity": "sha512-rOjh4nuWkAqf9PWu6JVpOWD4ndI+JHfgiZeMmujYcPi+fvILUu7g6l26TC1K5aBIp34nV+jE1cDO75EKOfHC5Q==", + "dev": true, + "requires": { + "domexception": "^1.0.1", + "typeson": "^6.1.0", + "typeson-registry": "^1.0.0-alpha.20" + }, + "dependencies": { + "domexception": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz", + "integrity": "sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==", + "dev": true, + "requires": { + "webidl-conversions": "^4.0.2" + } + }, + "webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", + "dev": true + } + } + }, + "recursive-readdir": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz", + "integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==", + "requires": { + "minimatch": "3.0.4" + }, + "dependencies": { + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "^1.1.7" + } + } + } + }, + "redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "dev": true, + "requires": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + } + }, + "regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==" + }, + "regenerate-unicode-properties": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", + "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", + "requires": { + "regenerate": "^1.4.2" + } + }, + "regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + }, + "regenerator-transform": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz", + "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", + "requires": { + "@babel/runtime": "^7.8.4" + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "regex-parser": { + "version": "2.2.11", + "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz", + "integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==" + }, + "regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + } + }, + "regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==" + }, + "regexpu-core": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.2.2.tgz", + "integrity": "sha512-T0+1Zp2wjF/juXMrMxHxidqGYn8U4R+zleSJhX9tQ1PUsS8a9UtYfbsF9LdiVgNX3kiX8RNaKM42nfSgvFJjmw==", + "requires": { + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsgen": "^0.7.1", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + } + }, + "regjsgen": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.7.1.tgz", + "integrity": "sha512-RAt+8H2ZEzHeYWxZ3H2z6tF18zyyOnlcdaafLrm21Bguj7uZy6ULibiAFdXEtKQY4Sy7wDTwDiOazasMLc4KPA==" + }, + "regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "requires": { + "jsesc": "~0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==" + } + } + }, + "relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==" + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==" + }, + "renderkid": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.7.tgz", + "integrity": "sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ==", + "requires": { + "css-select": "^4.1.3", + "dom-converter": "^0.2.0", + "htmlparser2": "^6.1.0", + "lodash": "^4.17.21", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==" + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "repeat-element": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz", + "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==" + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==" + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==" + }, + "require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==" + }, + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" + }, + "requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" + }, + "resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "requires": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "requires": { + "resolve-from": "^5.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==" + } + } + }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==" + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==" + }, + "resolve-url-loader": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-3.1.4.tgz", + "integrity": "sha512-D3sQ04o0eeQEySLrcz4DsX3saHfsr8/N6tfhblxgZKXxMT2Louargg12oGNfoTRLV09GXhVUe5/qgA5vdgNigg==", + "requires": { + "adjust-sourcemap-loader": "3.0.0", + "camelcase": "5.3.1", + "compose-function": "3.0.3", + "convert-source-map": "1.7.0", + "es6-iterator": "2.0.3", + "loader-utils": "1.2.3", + "postcss": "7.0.36", + "rework": "1.0.1", + "rework-visit": "1.0.0", + "source-map": "0.6.1" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "^1.9.0" + } + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "dependencies": { + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "convert-source-map": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "emojis-list": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", + "integrity": "sha512-knHEZMgs8BB+MInokmNTg/OyPlAddghe1YBgNwJBc5zsJi/uyIcXoSDsL/W9ymOsBoBGdPIHXYJ9+qKFwRwDng==" + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + }, + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", + "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^2.0.0", + "json5": "^1.0.1" + } + }, + "postcss": { + "version": "7.0.36", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", + "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "requires": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "dependencies": { + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + }, + "onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "requires": { + "mimic-fn": "^2.1.0" + } + } + } + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" + }, + "retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==" + }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==" + }, + "rework": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/rework/-/rework-1.0.1.tgz", + "integrity": "sha512-eEjL8FdkdsxApd0yWVZgBGzfCQiT8yqSc2H1p4jpZpQdtz7ohETiDMoje5PlM8I9WgkqkreVxFUKYOiJdVWDXw==", + "requires": { + "convert-source-map": "^0.3.3", + "css": "^2.0.0" + }, + "dependencies": { + "convert-source-map": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-0.3.5.tgz", + "integrity": "sha512-+4nRk0k3oEpwUB7/CalD7xE2z4VmtEnnq0GO2IPTkrooTrAhEsWvuLF5iWP1dXrwluki/azwXV1ve7gtYuPldg==" + } + } + }, + "rework-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/rework-visit/-/rework-visit-1.0.0.tgz", + "integrity": "sha512-W6V2fix7nCLUYX1v6eGPrBOZlc03/faqzP4sUxMAJMBMOPYhfV/RyLegTufn5gJKaOITyi+gvf0LXDZ9NzkHnQ==" + }, + "rfdc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", + "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", + "dev": true + }, + "rgb-regex": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/rgb-regex/-/rgb-regex-1.0.1.tgz", + "integrity": "sha512-gDK5mkALDFER2YLqH6imYvK6g02gpNGM4ILDZ472EwWfXZnC2ZEpoB2ECXTyOVUKuk/bPJZMzwQPBYICzP+D3w==" + }, + "rgba-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/rgba-regex/-/rgba-regex-1.0.0.tgz", + "integrity": "sha512-zgn5OjNQXLUTdq8m17KdaicF6w89TZs8ZU8y0AYENIU6wG8GG6LLm0yLSiPY8DmaYmHdgRW8rnApjoT0fQRfMg==" + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "requires": { + "glob": "^7.1.3" + } + }, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "rollup": { + "version": "1.32.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-1.32.1.tgz", + "integrity": "sha512-/2HA0Ec70TvQnXdzynFffkjA6XN+1e2pEv/uKS5Ulca40g2L7KuOE3riasHoNVHOsFD5KKZgDsMk1CP3Tw9s+A==", + "requires": { + "@types/estree": "*", + "@types/node": "*", + "acorn": "^7.1.0" + } + }, + "rollup-plugin-babel": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/rollup-plugin-babel/-/rollup-plugin-babel-4.4.0.tgz", + "integrity": "sha512-Lek/TYp1+7g7I+uMfJnnSJ7YWoD58ajo6Oarhlex7lvUce+RCKRuGRSgztDO3/MF/PuGKmUL5iTHKf208UNszw==", + "requires": { + "@babel/helper-module-imports": "^7.0.0", + "rollup-pluginutils": "^2.8.1" + } + }, + "rollup-plugin-terser": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/rollup-plugin-terser/-/rollup-plugin-terser-5.3.1.tgz", + "integrity": "sha512-1pkwkervMJQGFYvM9nscrUoncPwiKR/K+bHdjv6PFgRo3cgPHoRT83y2Aa3GvINj4539S15t/tpFPb775TDs6w==", + "requires": { + "@babel/code-frame": "^7.5.5", + "jest-worker": "^24.9.0", + "rollup-pluginutils": "^2.8.2", + "serialize-javascript": "^4.0.0", + "terser": "^4.6.2" + }, + "dependencies": { + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + }, + "jest-worker": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-24.9.0.tgz", + "integrity": "sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw==", + "requires": { + "merge-stream": "^2.0.0", + "supports-color": "^6.1.0" + } + }, + "serialize-javascript": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", + "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", + "requires": { + "randombytes": "^2.1.0" + } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "rollup-pluginutils": { + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz", + "integrity": "sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==", + "requires": { + "estree-walker": "^0.6.1" + }, + "dependencies": { + "estree-walker": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.1.tgz", + "integrity": "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==" + } + } + }, + "rsvp": { + "version": "4.8.5", + "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", + "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==" + }, + "run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "requires": { + "queue-microtask": "^1.2.2" + } + }, + "run-queue": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", + "integrity": "sha512-ntymy489o0/QQplUDnpYAYUsO50K9SBrIVaKCWDOJzYJts0f9WH9RFJkyagebkw5+y1oi00R7ynNW/d12GBumg==", + "requires": { + "aproba": "^1.1.1" + } + }, + "rxjs": { + "version": "7.5.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.7.tgz", + "integrity": "sha512-z9MzKh/UcOqB3i20H6rtrlaE/CgjLOvheWK/9ILrbhROGTweAi1BaFsTT9FbwZi5Trr1qNRs+MXkhmR06awzQA==", + "dev": true, + "requires": { + "tslib": "^2.1.0" + } + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==", + "requires": { + "ret": "~0.1.10" + } + }, + "safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "sane": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz", + "integrity": "sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA==", + "requires": { + "@cnakazawa/watch": "^1.0.3", + "anymatch": "^2.0.0", + "capture-exit": "^2.0.0", + "exec-sh": "^0.3.2", + "execa": "^1.0.0", + "fb-watchman": "^2.0.0", + "micromatch": "^3.1.4", + "minimist": "^1.1.1", + "walker": "~1.0.5" + }, + "dependencies": { + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "requires": { + "pump": "^3.0.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==" + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==" + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", + "requires": { + "remove-trailing-separator": "^1.0.1" + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", + "requires": { + "path-key": "^2.0.0" + } + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==" + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==" + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "sanitize.css": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/sanitize.css/-/sanitize.css-10.0.0.tgz", + "integrity": "sha512-vTxrZz4dX5W86M6oVWVdOVe72ZiPs41Oi7Z6Km4W5Turyz28mrXSJhhEBZoRtzJWIv3833WKVwLSDWWkEfupMg==" + }, + "sass": { + "version": "1.56.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.56.1.tgz", + "integrity": "sha512-VpEyKpyBPCxE7qGDtOcdJ6fFbcpOM+Emu7uZLxVrkX8KVU/Dp5UF7WLvzqRuUhB6mqqQt1xffLoG+AndxTZrCQ==", + "devOptional": true, + "requires": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + } + }, + "sass-loader": { + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-10.4.1.tgz", + "integrity": "sha512-aX/iJZTTpNUNx/OSYzo2KsjIUQHqvWsAhhUijFjAPdZTEhstjZI9zTNvkTTwsx+uNUJqUwOw5gacxQMx4hJxGQ==", + "requires": { + "klona": "^2.0.4", + "loader-utils": "^2.0.0", + "neo-async": "^2.6.2", + "schema-utils": "^3.0.0", + "semver": "^7.3.2" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "saxes": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", + "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "requires": { + "xmlchars": "^2.2.0" + } + }, + "scheduler": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", + "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + }, + "schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "requires": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + } + }, + "scrypt-async": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/scrypt-async/-/scrypt-async-2.0.1.tgz", + "integrity": "sha512-wHR032jldwZNy7Tzrfu7RccOgGf8r5hyDMSP2uV6DpLiBUsR8JsDcx/in73o2UGVVrH5ivRFdNsFPcjtl3LErQ==" + }, + "select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==" + }, + "selfsigned": { + "version": "1.10.14", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.14.tgz", + "integrity": "sha512-lkjaiAye+wBZDCBsu5BGi0XiLRxeUlsGod5ZP924CRSEoGuZAw/f7y9RKu28rwTfiHVhdavhB0qH0INV6P1lEA==", + "requires": { + "node-forge": "^0.10.0" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "requires": { + "lru-cache": "^6.0.0" + } + }, + "send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "requires": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + }, + "dependencies": { + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + } + } + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + } + } + }, + "serialize-javascript": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", + "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", + "requires": { + "randombytes": "^2.1.0" + } + }, + "serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", + "requires": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==" + }, + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==" + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==" + } + } + }, + "serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + } + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" + }, + "set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==" + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "requires": { + "isobject": "^3.0.1" + } + } + } + }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==" + }, + "setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" + }, + "shell-quote": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz", + "integrity": "sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==" + }, + "shellwords": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", + "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", + "optional": true + }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, + "signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "requires": { + "is-arrayish": "^0.3.1" + }, + "dependencies": { + "is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" + } + } + }, + "sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" + }, + "slice-ansi": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", + "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", + "dev": true, + "requires": { + "ansi-styles": "^6.0.0", + "is-fullwidth-code-point": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true + } + } + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==" + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==" + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", + "requires": { + "is-descriptor": "^1.0.0" + } + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "requires": { + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "sockjs": { + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", + "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", + "requires": { + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" + } + }, + "sockjs-client": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.6.1.tgz", + "integrity": "sha512-2g0tjOR+fRs0amxENLi/q5TiJTqY+WXFOzb5UwXndlK6TO3U/mirZznpx6w34HVMoc3g7cY24yC/ZMIYnDlfkw==", + "requires": { + "debug": "^3.2.7", + "eventsource": "^2.0.2", + "faye-websocket": "^0.11.4", + "inherits": "^2.0.4", + "url-parse": "^1.5.10" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "sort-keys": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", + "integrity": "sha512-vzn8aSqKgytVik0iwdBEi+zevbTYZogewTUM6dtpmGwEcdzbub/TX4bCzRhebDCRC3QzXgJsLRKB2V/Oof7HXg==", + "requires": { + "is-plain-obj": "^1.0.0" + } + }, + "source-list-map": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==" + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + }, + "source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==" + }, + "source-map-resolve": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "requires": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "source-map-url": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", + "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==" + }, + "sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==" + }, + "spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" + }, + "spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", + "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==" + }, + "spdy": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", + "requires": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + } + }, + "spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "requires": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "split2": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/split2/-/split2-0.2.1.tgz", + "integrity": "sha512-D/oTExYAkC9nWleOCTOyNmAuzfAT/6rHGBA9LIK7FVnGo13CSvrKCUzKenwH6U1s2znY9MqH6v0UQTEDa3vJmg==", + "dev": true, + "requires": { + "through2": "~0.6.1" + }, + "dependencies": { + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true + }, + "through2": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", + "integrity": "sha512-RkK/CCESdTKQZHdmKICijdKKsCRVHs5KsLZ6pACAmF/1GPUQhonHSXWNERctxEp7RmvjdNbZTL5z9V7nSCXKcg==", + "dev": true, + "requires": { + "readable-stream": ">=1.0.33-1 <1.1.0-0", + "xtend": ">=4.0.0 <4.1.0-0" + } + } + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" + }, + "ssri": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", + "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", + "requires": { + "minipass": "^3.1.1" + } + }, + "stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==" + }, + "stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "requires": { + "escape-string-regexp": "^2.0.0" + } + }, + "stackframe": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz", + "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==" + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==", + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" + } + } + }, + "statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" + }, + "stream-browserify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", + "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", + "dev": true, + "requires": { + "inherits": "~2.0.4", + "readable-stream": "^3.5.0" + } + }, + "stream-each": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", + "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", + "requires": { + "end-of-stream": "^1.1.0", + "stream-shift": "^1.0.0" + } + }, + "stream-http": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "requires": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "stream-shift": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", + "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==" + }, + "strict-uri-encode": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", + "integrity": "sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==" + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "requires": { + "safe-buffer": "~5.2.0" + } + }, + "string-argv": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", + "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", + "dev": true + }, + "string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "requires": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + } + }, + "string-natural-compare": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/string-natural-compare/-/string-natural-compare-3.0.1.tgz", + "integrity": "sha512-n3sPwynL1nwKi3WJ6AIsClwBMa0zTi54fn2oLU6ndfTSIO05xaznjSf15PcBZU6FNWbmN5Q6cxT4V5hGvB4taw==" + }, + "string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "requires": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true + }, + "strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dev": true, + "requires": { + "ansi-regex": "^6.0.1" + } + } + } + }, + "string.prototype.matchall": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz", + "integrity": "sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "regexp.prototype.flags": "^1.4.3", + "side-channel": "^1.0.4" + } + }, + "string.prototype.trimend": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", + "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "string.prototype.trimstart": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", + "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "stringify-object": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", + "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", + "requires": { + "get-own-enumerable-property-symbols": "^3.0.0", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==" + }, + "strip-comments": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/strip-comments/-/strip-comments-1.0.2.tgz", + "integrity": "sha512-kL97alc47hoyIQSV165tTt9rG5dn4w1dNnBhOQ3bOU1Nc1hel09jnXANaHJ7vzHLd4Ju8kseDGzlev96pghLFw==", + "requires": { + "babel-extract-comments": "^1.0.0", + "babel-plugin-transform-object-rest-spread": "^6.26.0" + } + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==" + }, + "strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "dev": true + }, + "strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, + "requires": { + "min-indent": "^1.0.0" + } + }, + "strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" + }, + "style-loader": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.3.0.tgz", + "integrity": "sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q==", + "requires": { + "loader-utils": "^2.0.0", + "schema-utils": "^2.7.0" + } + }, + "style-search": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz", + "integrity": "sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==", + "dev": true + }, + "stylehacks": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-4.0.3.tgz", + "integrity": "sha512-7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g==", + "requires": { + "browserslist": "^4.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0" + }, + "dependencies": { + "postcss-selector-parser": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", + "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", + "requires": { + "dot-prop": "^5.2.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "stylelint": { + "version": "14.15.0", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-14.15.0.tgz", + "integrity": "sha512-JOgDAo5QRsqiOZPZO+B9rKJvBm64S0xasbuRPAbPs6/vQDgDCnZLIiw6XcAS6GQKk9k1sBWR6rmH3Mfj8OknKg==", + "dev": true, + "requires": { + "@csstools/selector-specificity": "^2.0.2", + "balanced-match": "^2.0.0", + "colord": "^2.9.3", + "cosmiconfig": "^7.1.0", + "css-functions-list": "^3.1.0", + "debug": "^4.3.4", + "fast-glob": "^3.2.12", + "fastest-levenshtein": "^1.0.16", + "file-entry-cache": "^6.0.1", + "global-modules": "^2.0.0", + "globby": "^11.1.0", + "globjoin": "^0.1.4", + "html-tags": "^3.2.0", + "ignore": "^5.2.0", + "import-lazy": "^4.0.0", + "imurmurhash": "^0.1.4", + "is-plain-object": "^5.0.0", + "known-css-properties": "^0.26.0", + "mathml-tag-names": "^2.1.3", + "meow": "^9.0.0", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.4.19", + "postcss-media-query-parser": "^0.2.3", + "postcss-resolve-nested-selector": "^0.1.1", + "postcss-safe-parser": "^6.0.0", + "postcss-selector-parser": "^6.0.10", + "postcss-value-parser": "^4.2.0", + "resolve-from": "^5.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "style-search": "^0.1.0", + "supports-hyperlinks": "^2.3.0", + "svg-tags": "^1.0.0", + "table": "^6.8.1", + "v8-compile-cache": "^2.3.0", + "write-file-atomic": "^4.0.2" + }, + "dependencies": { + "@csstools/selector-specificity": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.0.2.tgz", + "integrity": "sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg==", + "dev": true, + "requires": {} + }, + "balanced-match": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-2.0.0.tgz", + "integrity": "sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "postcss": { + "version": "8.4.19", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.19.tgz", + "integrity": "sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==", + "dev": true, + "requires": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + } + }, + "postcss-safe-parser": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-6.0.0.tgz", + "integrity": "sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==", + "dev": true, + "requires": {} + }, + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + } + } + } + }, + "stylelint-config-recommended": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-6.0.0.tgz", + "integrity": "sha512-ZorSSdyMcxWpROYUvLEMm0vSZud2uB7tX1hzBZwvVY9SV/uly4AvvJPPhCcymZL3fcQhEQG5AELmrxWqtmzacw==", + "dev": true, + "requires": {} + }, + "stylelint-config-recommended-scss": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-5.0.2.tgz", + "integrity": "sha512-b14BSZjcwW0hqbzm9b0S/ScN2+3CO3O4vcMNOw2KGf8lfVSwJ4p5TbNEXKwKl1+0FMtgRXZj6DqVUe/7nGnuBg==", + "dev": true, + "requires": { + "postcss-scss": "^4.0.2", + "stylelint-config-recommended": "^6.0.0", + "stylelint-scss": "^4.0.0" + }, + "dependencies": { + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true, + "peer": true + }, + "postcss": { + "version": "8.4.19", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.19.tgz", + "integrity": "sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==", + "dev": true, + "peer": true, + "requires": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + } + }, + "postcss-scss": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.5.tgz", + "integrity": "sha512-F7xpB6TrXyqUh3GKdyB4Gkp3QL3DDW1+uI+gxx/oJnUt/qXI4trj5OGlp9rOKdoABGULuqtqeG+3HEVQk4DjmA==", + "dev": true, + "requires": {} + } + } + }, + "stylelint-config-standard": { + "version": "24.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-24.0.0.tgz", + "integrity": "sha512-+RtU7fbNT+VlNbdXJvnjc3USNPZRiRVp/d2DxOF/vBDDTi0kH5RX2Ny6errdtZJH3boO+bmqIYEllEmok4jiuw==", + "dev": true, + "requires": { + "stylelint-config-recommended": "^6.0.0" + } + }, + "stylelint-config-standard-scss": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-standard-scss/-/stylelint-config-standard-scss-3.0.0.tgz", + "integrity": "sha512-zt3ZbzIbllN1iCmc94e4pDxqpkzeR6CJo5DDXzltshuXr+82B8ylHyMMARNnUYrZH80B7wgY7UkKTYCFM0UUyw==", + "dev": true, + "requires": { + "stylelint-config-recommended-scss": "^5.0.2", + "stylelint-config-standard": "^24.0.0" + } + }, + "stylelint-no-unsupported-browser-features": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/stylelint-no-unsupported-browser-features/-/stylelint-no-unsupported-browser-features-6.0.1.tgz", + "integrity": "sha512-cuhp3gU+SMp0I5dCykjQ0iSTtBsWeA7qNZlNBYnCW7L4KPudunRYyGQ8gcClRJtFpGkElQUtsfLMALNFZVdEFw==", + "dev": true, + "requires": { + "doiuse": "^4.4.1", + "lodash": "^4.17.15", + "postcss": "^8.4.16" + }, + "dependencies": { + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "postcss": { + "version": "8.4.19", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.19.tgz", + "integrity": "sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==", + "dev": true, + "requires": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + } + } + } + }, + "stylelint-order": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/stylelint-order/-/stylelint-order-5.0.0.tgz", + "integrity": "sha512-OWQ7pmicXufDw5BlRqzdz3fkGKJPgLyDwD1rFY3AIEfIH/LQY38Vu/85v8/up0I+VPiuGRwbc2Hg3zLAsJaiyw==", + "dev": true, + "requires": { + "postcss": "^8.3.11", + "postcss-sorting": "^7.0.1" + }, + "dependencies": { + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "postcss": { + "version": "8.4.19", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.19.tgz", + "integrity": "sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==", + "dev": true, + "requires": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + } + }, + "postcss-sorting": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-sorting/-/postcss-sorting-7.0.1.tgz", + "integrity": "sha512-iLBFYz6VRYyLJEJsBJ8M3TCqNcckVzz4wFounSc5Oez35ogE/X+aoC5fFu103Ot7NyvjU3/xqIXn93Gp3kJk4g==", + "dev": true, + "requires": {} + } + } + }, + "stylelint-scss": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-4.3.0.tgz", + "integrity": "sha512-GvSaKCA3tipzZHoz+nNO7S02ZqOsdBzMiCx9poSmLlb3tdJlGddEX/8QzCOD8O7GQan9bjsvLMsO5xiw6IhhIQ==", + "dev": true, + "requires": { + "lodash": "^4.17.21", + "postcss-media-query-parser": "^0.2.3", + "postcss-resolve-nested-selector": "^0.1.1", + "postcss-selector-parser": "^6.0.6", + "postcss-value-parser": "^4.1.0" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "requires": { + "has-flag": "^4.0.0" + } + }, + "supports-hyperlinks": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", + "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", + "requires": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + } + }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" + }, + "svg-parser": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz", + "integrity": "sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==" + }, + "svg-tags": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", + "integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==", + "dev": true + }, + "svgo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz", + "integrity": "sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==", + "requires": { + "chalk": "^2.4.1", + "coa": "^2.0.2", + "css-select": "^2.0.0", + "css-select-base-adapter": "^0.1.1", + "css-tree": "1.0.0-alpha.37", + "csso": "^4.0.2", + "js-yaml": "^3.13.1", + "mkdirp": "~0.5.1", + "object.values": "^1.1.0", + "sax": "~1.2.4", + "stable": "^0.1.8", + "unquote": "~1.1.1", + "util.promisify": "~1.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "css-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", + "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", + "requires": { + "boolbase": "^1.0.0", + "css-what": "^3.2.1", + "domutils": "^1.7.0", + "nth-check": "^1.0.2" + } + }, + "css-what": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz", + "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==" + }, + "dom-serializer": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "requires": { + "domelementtype": "^2.0.1", + "entities": "^2.0.0" + } + }, + "domutils": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", + "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + }, + "dependencies": { + "domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" + } + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + }, + "nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "requires": { + "boolbase": "~1.0.0" + } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==" + }, + "table": { + "version": "6.8.1", + "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz", + "integrity": "sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==", + "requires": { + "ajv": "^8.0.1", + "lodash.truncate": "^4.4.2", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1" + }, + "dependencies": { + "ajv": { + "version": "8.11.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.2.tgz", + "integrity": "sha512-E4bfmKAhGiSTvMfL1Myyycaub+cUEU2/IvpylXkUu7CHBkBj1f/ikdzbD7YQ6FKUbixDxeYvB/xY4fvyroDlQg==", + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + } + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + } + } + }, + "tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==" + }, + "tar": { + "version": "6.1.12", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.12.tgz", + "integrity": "sha512-jU4TdemS31uABHd+Lt5WEYJuzn+TJTCBLljvIAHZOz6M9Os5pJ4dD+vRFLxPa/n3T0iEFzpi+0x1UfuDZYbRMw==", + "requires": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "dependencies": { + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" + } + } + }, + "temp-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", + "integrity": "sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ==" + }, + "tempy": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/tempy/-/tempy-0.3.0.tgz", + "integrity": "sha512-WrH/pui8YCwmeiAoxV+lpRH9HpRtgBhSR2ViBPgpGb/wnYDzp21R4MN45fsCGvLROvY67o3byhJRYRONJyImVQ==", + "requires": { + "temp-dir": "^1.0.0", + "type-fest": "^0.3.1", + "unique-string": "^1.0.0" + }, + "dependencies": { + "type-fest": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", + "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==" + } + } + }, + "terminal-link": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", + "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", + "requires": { + "ansi-escapes": "^4.2.1", + "supports-hyperlinks": "^2.0.0" + } + }, + "terser": { + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz", + "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==", + "requires": { + "commander": "^2.20.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.12" + }, + "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + } + } + }, + "terser-webpack-plugin": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-4.2.3.tgz", + "integrity": "sha512-jTgXh40RnvOrLQNgIkwEKnQ8rmHjHK4u+6UBEi+W+FPmvb+uo+chJXntKe7/3lW5mNysgSWD60KyesnhW8D6MQ==", + "requires": { + "cacache": "^15.0.5", + "find-cache-dir": "^3.3.1", + "jest-worker": "^26.5.0", + "p-limit": "^3.0.2", + "schema-utils": "^3.0.0", + "serialize-javascript": "^5.0.1", + "source-map": "^0.6.1", + "terser": "^5.3.4", + "webpack-sources": "^1.4.3" + }, + "dependencies": { + "acorn": { + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==" + }, + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "requires": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + } + }, + "jest-worker": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", + "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "requires": { + "semver": "^6.0.0" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "requires": { + "find-up": "^4.0.0" + } + }, + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + }, + "terser": { + "version": "5.15.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.15.1.tgz", + "integrity": "sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==", + "requires": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + } + } + } + }, + "test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "requires": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + } + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" + }, + "throat": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz", + "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==" + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "through2": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", + "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", + "dev": true, + "requires": { + "readable-stream": "3" + } + }, + "thunky": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" + }, + "timers-browserify": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", + "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", + "requires": { + "setimmediate": "^1.0.4" + } + }, + "timsort": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz", + "integrity": "sha512-qsdtZH+vMoCARQtyod4imc2nIJwg9Cc7lPRrw9CzF8ZKR0khdr8+2nX80PBhET3tcyTtJDxAffGh2rXH4tyU8A==" + }, + "tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==" + }, + "to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha512-okFlQcoGTi4LQBG/PgSYblw9VOyptsz2KJZqc6qtgGdes8VktzUQkj4BI2blit072iS8VODNcMA+tvnS9dnuMA==" + }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==" + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "requires": { + "is-number": "^7.0.0" + } + }, + "toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" + }, + "tough-cookie": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.2.tgz", + "integrity": "sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==", + "requires": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "dependencies": { + "universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==" + } + } + }, + "tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "trim-newlines": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", + "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", + "dev": true + }, + "tryer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tryer/-/tryer-1.0.1.tgz", + "integrity": "sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA==" + }, + "ts-pnp": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/ts-pnp/-/ts-pnp-1.2.0.tgz", + "integrity": "sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw==" + }, + "tsconfig-paths": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", + "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==", + "requires": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "requires": { + "minimist": "^1.2.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==" + } + } + }, + "tslib": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", + "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" + }, + "tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "requires": { + "tslib": "^1.8.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "tty-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", + "integrity": "sha512-JVa5ijo+j/sOoHGjw0sxw734b1LhBkQ3bvUGNdxnVXDCX81Yx7TFgnZygxrIIWn23hbfTaMYLwRmAxFyDuFmIw==" + }, + "tweetnacl": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", + "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" + }, + "type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" + }, + "type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "requires": { + "prelude-ls": "^1.2.1" + } + }, + "type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==" + }, + "type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==" + }, + "type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + } + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==" + }, + "typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "requires": { + "is-typedarray": "^1.0.0" + } + }, + "typescript": { + "version": "4.8.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.4.tgz", + "integrity": "sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ==" + }, + "typeson": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/typeson/-/typeson-6.1.0.tgz", + "integrity": "sha512-6FTtyGr8ldU0pfbvW/eOZrEtEkczHRUtduBnA90Jh9kMPCiFNnXIon3vF41N0S4tV1HHQt4Hk1j4srpESziCaA==", + "dev": true + }, + "typeson-registry": { + "version": "1.0.0-alpha.39", + "resolved": "https://registry.npmjs.org/typeson-registry/-/typeson-registry-1.0.0-alpha.39.tgz", + "integrity": "sha512-NeGDEquhw+yfwNhguLPcZ9Oj0fzbADiX4R0WxvoY8nGhy98IbzQy1sezjoEFWOywOboj/DWehI+/aUlRVrJnnw==", + "dev": true, + "requires": { + "base64-arraybuffer-es6": "^0.7.0", + "typeson": "^6.0.0", + "whatwg-url": "^8.4.0" + }, + "dependencies": { + "tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "dev": true, + "requires": { + "punycode": "^2.1.1" + } + }, + "whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "dev": true, + "requires": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + } + } + } + }, + "unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "requires": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + } + }, + "unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==" + }, + "unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "requires": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + } + }, + "unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==" + }, + "unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==" + }, + "union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==" + } + } + }, + "uniq": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", + "integrity": "sha512-Gw+zz50YNKPDKXs+9d+aKAjVwpjNwqzvNpLigIruT4HA9lMZNdMqs9x07kKHB/L9WRzqp4+DlTU5s4wG2esdoA==" + }, + "uniqs": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/uniqs/-/uniqs-2.0.0.tgz", + "integrity": "sha512-mZdDpf3vBV5Efh29kMw5tXoup/buMgxLzOt/XKFKcVmi+15ManNQWr6HfZ2aiZTYlYixbdNJ0KFmIZIv52tHSQ==" + }, + "unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "requires": { + "unique-slug": "^2.0.0" + } + }, + "unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "requires": { + "imurmurhash": "^0.1.4" + } + }, + "unique-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", + "integrity": "sha512-ODgiYu03y5g76A1I9Gt0/chLCzQjvzDy7DsZGsLOE/1MrF6wriEskSncj1+/C58Xk/kPZDppSctDybCwOSaGAg==", + "requires": { + "crypto-random-string": "^1.0.0" + } + }, + "universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==" + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==" + }, + "unquote": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", + "integrity": "sha512-vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg==" + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==", + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==", + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + } + } + }, + "upath": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", + "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==" + }, + "update-browserslist-db": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "dependencies": { + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + } + } + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "requires": { + "punycode": "^2.1.0" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==" + }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==" + } + } + }, + "url-loader": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz", + "integrity": "sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==", + "requires": { + "loader-utils": "^2.0.0", + "mime-types": "^2.1.27", + "schema-utils": "^3.0.0" + }, + "dependencies": { + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + } + } + }, + "url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "requires": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" + }, + "use-composed-ref": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/use-composed-ref/-/use-composed-ref-1.3.0.tgz", + "integrity": "sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==", + "requires": {} + }, + "use-isomorphic-layout-effect": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.2.tgz", + "integrity": "sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==", + "requires": {} + }, + "use-latest": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/use-latest/-/use-latest-1.2.1.tgz", + "integrity": "sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==", + "requires": { + "use-isomorphic-layout-effect": "^1.1.1" + } + }, + "util": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", + "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", + "requires": { + "inherits": "2.0.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==" + } + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "util.promisify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", + "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", + "requires": { + "define-properties": "^1.1.2", + "object.getownpropertydescriptors": "^2.0.3" + } + }, + "utila": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", + "integrity": "sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==" + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==" + }, + "uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + }, + "v8-compile-cache": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==" + }, + "v8-to-istanbul": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-7.1.2.tgz", + "integrity": "sha512-TxNb7YEUwkLXCQYeudi6lgQ/SZrzNO4kMdlqVxaZPUIUjCv6iSSypUQX70kNBSERpQ8fk48+d61FXk+tgqcWow==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0", + "source-map": "^0.7.3" + }, + "dependencies": { + "source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==" + } + } + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==" + }, + "vendors": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.4.tgz", + "integrity": "sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w==" + }, + "vlq": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/vlq/-/vlq-2.0.4.tgz", + "integrity": "sha512-aodjPa2wPQFkra1G8CzJBTHXhgk3EVSwxSWXNPr1fgdFLUb8kvLV1iEb6rFgasIsjP82HWI6dsb5Io26DDnasA==" + }, + "vm-browserify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" + }, + "w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "requires": { + "browser-process-hrtime": "^1.0.0" + } + }, + "w3c-xmlserializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", + "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "requires": { + "xml-name-validator": "^3.0.0" + } + }, + "walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "requires": { + "makeerror": "1.0.12" + } + }, + "warning": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz", + "integrity": "sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==", + "requires": { + "loose-envify": "^1.0.0" + } + }, + "watchpack": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz", + "integrity": "sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ==", + "requires": { + "chokidar": "^3.4.1", + "graceful-fs": "^4.1.2", + "neo-async": "^2.5.0", + "watchpack-chokidar2": "^2.0.1" + } + }, + "watchpack-chokidar2": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz", + "integrity": "sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww==", + "optional": true, + "requires": { + "chokidar": "^2.1.8" + }, + "dependencies": { + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "optional": true, + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + }, + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", + "optional": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } + } + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "optional": true + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "optional": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "optional": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", + "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "optional": true, + "requires": { + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "fsevents": "^1.2.7", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", + "optional": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "optional": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "optional": true, + "requires": { + "bindings": "^1.5.0", + "nan": "^2.12.1" + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==", + "optional": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==", + "optional": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==", + "optional": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "optional": true + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "optional": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "optional": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "optional": true + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "optional": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "optional": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "optional": true, + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "optional": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "optional": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "optional": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + } + } + }, + "wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "requires": { + "minimalistic-assert": "^1.0.0" + } + }, + "web-vitals": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/web-vitals/-/web-vitals-3.0.4.tgz", + "integrity": "sha512-Yau8qf1AJ/dm6MY180Bi0qpCIuWmAfKAnOqmxLecGfIHn0+ND3H4JOhXeY73Pyi9zjSF5J4SNUewHLNUzU7mmA==" + }, + "webfontloader": { + "version": "1.6.28", + "resolved": "https://registry.npmjs.org/webfontloader/-/webfontloader-1.6.28.tgz", + "integrity": "sha512-Egb0oFEga6f+nSgasH3E0M405Pzn6y3/9tOVanv/DLfa1YBIgcv90L18YyWnvXkRbIM17v5Kv6IT2N6g1x5tvQ==" + }, + "webidl-conversions": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==" + }, + "webpack": { + "version": "4.44.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.44.2.tgz", + "integrity": "sha512-6KJVGlCxYdISyurpQ0IPTklv+DULv05rs2hseIXer6D7KrUicRDLFb4IUM1S6LUAKypPM/nSiVSuv8jHu1m3/Q==", + "requires": { + "@webassemblyjs/ast": "1.9.0", + "@webassemblyjs/helper-module-context": "1.9.0", + "@webassemblyjs/wasm-edit": "1.9.0", + "@webassemblyjs/wasm-parser": "1.9.0", + "acorn": "^6.4.1", + "ajv": "^6.10.2", + "ajv-keywords": "^3.4.1", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^4.3.0", + "eslint-scope": "^4.0.3", + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^2.4.0", + "loader-utils": "^1.2.3", + "memory-fs": "^0.4.1", + "micromatch": "^3.1.10", + "mkdirp": "^0.5.3", + "neo-async": "^2.6.1", + "node-libs-browser": "^2.2.1", + "schema-utils": "^1.0.0", + "tapable": "^1.1.3", + "terser-webpack-plugin": "^1.4.3", + "watchpack": "^1.7.4", + "webpack-sources": "^1.4.1" + }, + "dependencies": { + "acorn": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", + "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==" + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "cacache": { + "version": "12.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", + "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", + "requires": { + "bluebird": "^3.5.5", + "chownr": "^1.1.1", + "figgy-pudding": "^3.5.1", + "glob": "^7.1.4", + "graceful-fs": "^4.1.15", + "infer-owner": "^1.0.3", + "lru-cache": "^5.1.1", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.3", + "ssri": "^6.0.1", + "unique-filename": "^1.1.1", + "y18n": "^4.0.0" + } + }, + "chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + }, + "eslint-scope": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", + "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==" + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==" + }, + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + }, + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "requires": { + "yallist": "^3.0.2" + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "requires": { + "glob": "^7.1.3" + } + }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + }, + "serialize-javascript": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", + "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", + "requires": { + "randombytes": "^2.1.0" + } + }, + "ssri": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", + "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", + "requires": { + "figgy-pudding": "^3.5.1" + } + }, + "terser-webpack-plugin": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz", + "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==", + "requires": { + "cacache": "^12.0.2", + "find-cache-dir": "^2.1.0", + "is-wsl": "^1.1.0", + "schema-utils": "^1.0.0", + "serialize-javascript": "^4.0.0", + "source-map": "^0.6.1", + "terser": "^4.1.2", + "webpack-sources": "^1.4.0", + "worker-farm": "^1.7.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + } + } + }, + "webpack-dev-middleware": { + "version": "3.7.3", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.7.3.tgz", + "integrity": "sha512-djelc/zGiz9nZj/U7PTBi2ViorGJXEWo/3ltkPbDyxCXhhEXkW0ce99falaok4TPj+AsxLiXJR0EBOb0zh9fKQ==", + "requires": { + "memory-fs": "^0.4.1", + "mime": "^2.4.4", + "mkdirp": "^0.5.1", + "range-parser": "^1.2.1", + "webpack-log": "^2.0.0" + }, + "dependencies": { + "mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==" + } + } + }, + "webpack-dev-server": { + "version": "3.11.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.11.1.tgz", + "integrity": "sha512-u4R3mRzZkbxQVa+MBWi2uVpB5W59H3ekZAJsQlKUTdl7Elcah2EhygTPLmeFXybQkf9i2+L0kn7ik9SnXa6ihQ==", + "requires": { + "ansi-html": "0.0.7", + "bonjour": "^3.5.0", + "chokidar": "^2.1.8", + "compression": "^1.7.4", + "connect-history-api-fallback": "^1.6.0", + "debug": "^4.1.1", + "del": "^4.1.1", + "express": "^4.17.1", + "html-entities": "^1.3.1", + "http-proxy-middleware": "0.19.1", + "import-local": "^2.0.0", + "internal-ip": "^4.3.0", + "ip": "^1.1.5", + "is-absolute-url": "^3.0.3", + "killable": "^1.0.1", + "loglevel": "^1.6.8", + "opn": "^5.5.0", + "p-retry": "^3.0.1", + "portfinder": "^1.0.26", + "schema-utils": "^1.0.0", + "selfsigned": "^1.10.8", + "semver": "^6.3.0", + "serve-index": "^1.9.1", + "sockjs": "^0.3.21", + "sockjs-client": "^1.5.0", + "spdy": "^4.0.2", + "strip-ansi": "^3.0.1", + "supports-color": "^6.1.0", + "url": "^0.11.0", + "webpack-dev-middleware": "^3.7.2", + "webpack-log": "^2.0.0", + "ws": "^6.2.1", + "yargs": "^13.3.2" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==" + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "^1.9.0" + } + }, + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + }, + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } + } + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==" + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" + }, + "chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", + "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "requires": { + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "fsevents": "^1.2.7", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" + } + }, + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "requires": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==" + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "optional": true, + "requires": { + "bindings": "^1.5.0", + "nan": "^2.12.1" + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==", + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==", + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + }, + "import-local": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", + "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", + "requires": { + "pkg-dir": "^3.0.0", + "resolve-cwd": "^2.0.0" + } + }, + "is-absolute-url": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-3.0.3.tgz", + "integrity": "sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==" + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==", + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==" + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==" + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.0.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "resolve-cwd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", + "integrity": "sha512-ccu8zQTrzVr954472aUVPLEcB3YpKSYR3cg/3lo1okzobPBM+1INXBbBZlDbnI/hbEocnf8j0QVo43hQKrbchg==", + "requires": { + "resolve-from": "^3.0.0" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==" + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==" + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "requires": { + "has-flag": "^3.0.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==" + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, + "ws": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz", + "integrity": "sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==", + "requires": { + "async-limiter": "~1.0.0" + } + }, + "yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "requires": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" + } + }, + "yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, + "webpack-log": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-2.0.0.tgz", + "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==", + "requires": { + "ansi-colors": "^3.0.0", + "uuid": "^3.3.2" + }, + "dependencies": { + "ansi-colors": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz", + "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==" + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" + } + } + }, + "webpack-manifest-plugin": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/webpack-manifest-plugin/-/webpack-manifest-plugin-2.2.0.tgz", + "integrity": "sha512-9S6YyKKKh/Oz/eryM1RyLVDVmy3NSPV0JXMRhZ18fJsq+AwGxUY34X54VNwkzYcEmEkDwNxuEOboCZEebJXBAQ==", + "requires": { + "fs-extra": "^7.0.0", + "lodash": ">=3.5 <5", + "object.entries": "^1.1.0", + "tapable": "^1.0.0" + }, + "dependencies": { + "fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==" + } + } + }, + "webpack-sources": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", + "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", + "requires": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + } + }, + "websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "requires": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + } + }, + "websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==" + }, + "whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "requires": { + "iconv-lite": "0.4.24" + } + }, + "whatwg-fetch": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz", + "integrity": "sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA==" + }, + "whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==" + }, + "whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "requires": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + }, + "dependencies": { + "webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + } + } + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "requires": { + "isexe": "^2.0.0" + } + }, + "which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "requires": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==" + }, + "word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" + }, + "workbox-background-sync": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-background-sync/-/workbox-background-sync-5.1.4.tgz", + "integrity": "sha512-AH6x5pYq4vwQvfRDWH+vfOePfPIYQ00nCEB7dJRU1e0n9+9HMRyvI63FlDvtFT2AvXVRsXvUt7DNMEToyJLpSA==", + "requires": { + "workbox-core": "^5.1.4" + } + }, + "workbox-broadcast-update": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-broadcast-update/-/workbox-broadcast-update-5.1.4.tgz", + "integrity": "sha512-HTyTWkqXvHRuqY73XrwvXPud/FN6x3ROzkfFPsRjtw/kGZuZkPzfeH531qdUGfhtwjmtO/ZzXcWErqVzJNdXaA==", + "requires": { + "workbox-core": "^5.1.4" + } + }, + "workbox-build": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-build/-/workbox-build-5.1.4.tgz", + "integrity": "sha512-xUcZn6SYU8usjOlfLb9Y2/f86Gdo+fy1fXgH8tJHjxgpo53VVsqRX0lUDw8/JuyzNmXuo8vXX14pXX2oIm9Bow==", + "requires": { + "@babel/core": "^7.8.4", + "@babel/preset-env": "^7.8.4", + "@babel/runtime": "^7.8.4", + "@hapi/joi": "^15.1.0", + "@rollup/plugin-node-resolve": "^7.1.1", + "@rollup/plugin-replace": "^2.3.1", + "@surma/rollup-plugin-off-main-thread": "^1.1.1", + "common-tags": "^1.8.0", + "fast-json-stable-stringify": "^2.1.0", + "fs-extra": "^8.1.0", + "glob": "^7.1.6", + "lodash.template": "^4.5.0", + "pretty-bytes": "^5.3.0", + "rollup": "^1.31.1", + "rollup-plugin-babel": "^4.3.3", + "rollup-plugin-terser": "^5.3.1", + "source-map": "^0.7.3", + "source-map-url": "^0.4.0", + "stringify-object": "^3.3.0", + "strip-comments": "^1.0.2", + "tempy": "^0.3.0", + "upath": "^1.2.0", + "workbox-background-sync": "^5.1.4", + "workbox-broadcast-update": "^5.1.4", + "workbox-cacheable-response": "^5.1.4", + "workbox-core": "^5.1.4", + "workbox-expiration": "^5.1.4", + "workbox-google-analytics": "^5.1.4", + "workbox-navigation-preload": "^5.1.4", + "workbox-precaching": "^5.1.4", + "workbox-range-requests": "^5.1.4", + "workbox-routing": "^5.1.4", + "workbox-strategies": "^5.1.4", + "workbox-streams": "^5.1.4", + "workbox-sw": "^5.1.4", + "workbox-window": "^5.1.4" + }, + "dependencies": { + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==" + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==" + } + } + }, + "workbox-cacheable-response": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-cacheable-response/-/workbox-cacheable-response-5.1.4.tgz", + "integrity": "sha512-0bfvMZs0Of1S5cdswfQK0BXt6ulU5kVD4lwer2CeI+03czHprXR3V4Y8lPTooamn7eHP8Iywi5QjyAMjw0qauA==", + "requires": { + "workbox-core": "^5.1.4" + } + }, + "workbox-core": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-core/-/workbox-core-5.1.4.tgz", + "integrity": "sha512-+4iRQan/1D8I81nR2L5vcbaaFskZC2CL17TLbvWVzQ4qiF/ytOGF6XeV54pVxAvKUtkLANhk8TyIUMtiMw2oDg==" + }, + "workbox-expiration": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-expiration/-/workbox-expiration-5.1.4.tgz", + "integrity": "sha512-oDO/5iC65h2Eq7jctAv858W2+CeRW5e0jZBMNRXpzp0ZPvuT6GblUiHnAsC5W5lANs1QS9atVOm4ifrBiYY7AQ==", + "requires": { + "workbox-core": "^5.1.4" + } + }, + "workbox-google-analytics": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-google-analytics/-/workbox-google-analytics-5.1.4.tgz", + "integrity": "sha512-0IFhKoEVrreHpKgcOoddV+oIaVXBFKXUzJVBI+nb0bxmcwYuZMdteBTp8AEDJacENtc9xbR0wa9RDCnYsCDLjA==", + "requires": { + "workbox-background-sync": "^5.1.4", + "workbox-core": "^5.1.4", + "workbox-routing": "^5.1.4", + "workbox-strategies": "^5.1.4" + } + }, + "workbox-navigation-preload": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-navigation-preload/-/workbox-navigation-preload-5.1.4.tgz", + "integrity": "sha512-Wf03osvK0wTflAfKXba//QmWC5BIaIZARU03JIhAEO2wSB2BDROWI8Q/zmianf54kdV7e1eLaIEZhth4K4MyfQ==", + "requires": { + "workbox-core": "^5.1.4" + } + }, + "workbox-precaching": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-precaching/-/workbox-precaching-5.1.4.tgz", + "integrity": "sha512-gCIFrBXmVQLFwvAzuGLCmkUYGVhBb7D1k/IL7pUJUO5xacjLcFUaLnnsoVepBGAiKw34HU1y/YuqvTKim9qAZA==", + "requires": { + "workbox-core": "^5.1.4" + } + }, + "workbox-range-requests": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-range-requests/-/workbox-range-requests-5.1.4.tgz", + "integrity": "sha512-1HSujLjgTeoxHrMR2muDW2dKdxqCGMc1KbeyGcmjZZAizJTFwu7CWLDmLv6O1ceWYrhfuLFJO+umYMddk2XMhw==", + "requires": { + "workbox-core": "^5.1.4" + } + }, + "workbox-routing": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-routing/-/workbox-routing-5.1.4.tgz", + "integrity": "sha512-8ljknRfqE1vEQtnMtzfksL+UXO822jJlHTIR7+BtJuxQ17+WPZfsHqvk1ynR/v0EHik4x2+826Hkwpgh4GKDCw==", + "requires": { + "workbox-core": "^5.1.4" + } + }, + "workbox-strategies": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-strategies/-/workbox-strategies-5.1.4.tgz", + "integrity": "sha512-VVS57LpaJTdjW3RgZvPwX0NlhNmscR7OQ9bP+N/34cYMDzXLyA6kqWffP6QKXSkca1OFo/v6v7hW7zrrguo6EA==", + "requires": { + "workbox-core": "^5.1.4", + "workbox-routing": "^5.1.4" + } + }, + "workbox-streams": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-streams/-/workbox-streams-5.1.4.tgz", + "integrity": "sha512-xU8yuF1hI/XcVhJUAfbQLa1guQUhdLMPQJkdT0kn6HP5CwiPOGiXnSFq80rAG4b1kJUChQQIGPrq439FQUNVrw==", + "requires": { + "workbox-core": "^5.1.4", + "workbox-routing": "^5.1.4" + } + }, + "workbox-sw": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-sw/-/workbox-sw-5.1.4.tgz", + "integrity": "sha512-9xKnKw95aXwSNc8kk8gki4HU0g0W6KXu+xks7wFuC7h0sembFnTrKtckqZxbSod41TDaGh+gWUA5IRXrL0ECRA==" + }, + "workbox-webpack-plugin": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-webpack-plugin/-/workbox-webpack-plugin-5.1.4.tgz", + "integrity": "sha512-PZafF4HpugZndqISi3rZ4ZK4A4DxO8rAqt2FwRptgsDx7NF8TVKP86/huHquUsRjMGQllsNdn4FNl8CD/UvKmQ==", + "requires": { + "@babel/runtime": "^7.5.5", + "fast-json-stable-stringify": "^2.0.0", + "source-map-url": "^0.4.0", + "upath": "^1.1.2", + "webpack-sources": "^1.3.0", + "workbox-build": "^5.1.4" + } + }, + "workbox-window": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/workbox-window/-/workbox-window-5.1.4.tgz", + "integrity": "sha512-vXQtgTeMCUq/4pBWMfQX8Ee7N2wVC4Q7XYFqLnfbXJ2hqew/cU1uMTD2KqGEgEpE4/30luxIxgE+LkIa8glBYw==", + "requires": { + "workbox-core": "^5.1.4" + } + }, + "worker-farm": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", + "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", + "requires": { + "errno": "~0.1.7" + } + }, + "worker-rpc": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/worker-rpc/-/worker-rpc-0.1.1.tgz", + "integrity": "sha512-P1WjMrUB3qgJNI9jfmpZ/htmBEjFh//6l/5y8SD9hg1Ef5zTTVVoRjTrTEzPrNBQvmhMxkoTsjOXN10GWU7aCg==", + "requires": { + "microevent.ts": "~0.1.1" + } + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "requires": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "ws": { + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "requires": {} + }, + "xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==" + }, + "xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==" + }, + "xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" + }, + "y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "yaml": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.1.3.tgz", + "integrity": "sha512-AacA8nRULjKMX2DvWvOAdBZMOfQlypSFkjcOcu9FalllIDJ1kvlREzcdIZmidQUqqeMv7jorHjq2HlLv/+c2lg==", + "dev": true + }, + "yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "requires": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + }, + "dependencies": { + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, + "yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true + }, + "yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==" + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..3b56323 --- /dev/null +++ b/package.json @@ -0,0 +1,113 @@ +{ + "name": "pera-wallet-web", + "version": "1.0.0", + "private": true, + "dependencies": { + "@hipo/react-ui-toolkit": "1.0.1", + "algosdk": "1.23.2", + "date-fns": "2.29.3", + "date-fns-tz": "1.3.7", + "env-cmd": "10.1.0", + "lottie-react": "2.3.1", + "process": "0.11.10", + "react": "17.0.2", + "react-dom": "17.0.2", + "react-modal": "3.16.1", + "react-qrcode-logo": "2.8.0", + "react-router-dom": "6.4.3", + "react-scripts": "4.0.3", + "react-tooltip": "4.5.0", + "scrypt-async": "2.0.1", + "tweetnacl": "1.0.3", + "web-vitals": "3.0.4", + "webfontloader": "1.6.28" + }, + "scripts": { + "start": "react-scripts start", + "build": "react-scripts build", + "test": "react-scripts test", + "eject": "react-scripts eject", + "build:staging": "env-cmd -f .env.staging npm run build", + "build:production": "env-cmd -f .env.production npm run build", + "check-package-updates": "npx npm-check-updates", + "prepare": "husky install", + "prettify": "prettier --config ./.prettierrc.js --write \"src/**/*.{ts,tsx}\"", + "type-check:watch": "tsc --watch" + }, + "eslintConfig": { + "parser": "@typescript-eslint/parser", + "plugins": [ + "react", + "react-hooks", + "@typescript-eslint", + "jsx-a11y" + ], + "extends": [ + "react-app", + "react-app/jest", + "@hipo/eslint-config-base", + "@hipo/eslint-config-react", + "@hipo/eslint-config-typescript", + "plugin:jsx-a11y/recommended", + "prettier" + ] + }, + "browserslist": { + "production": [ + ">0.2%", + "not dead", + "not op_mini all" + ], + "development": [ + "last 1 chrome version", + "last 1 firefox version", + "last 1 safari version" + ] + }, + "devDependencies": { + "@hipo/eslint-config-base": "4.2.1", + "@hipo/eslint-config-react": "2.3.0", + "@hipo/eslint-config-typescript": "1.2.0", + "@hipo/stylelint-config-base": "3.2.0", + "@types/jest": "29.2.3", + "@types/node": "16.11.36", + "@types/react": "17.0.45", + "@types/react-dom": "17.0.17", + "@types/react-modal": "3.13.1", + "@types/react-router-dom": "5.3.3", + "@types/scrypt-async": "1.3.2", + "@types/webfontloader": "1.6.35", + "@typescript-eslint/parser": "5.43.0", + "buffer": "6.0.3", + "classnames": "2.3.2", + "crypto-browserify": "3.12.0", + "eslint-config-prettier": "8.5.0", + "eslint-import-resolver-typescript": "2.5.0", + "fake-indexeddb": "4.0.0", + "husky": "8.0.2", + "lint-staged": "13.0.3", + "prettier": "2.7.1", + "react-error-overlay": "6.0.9", + "sass": "1.56.1", + "stream-browserify": "3.0.0", + "stylelint": "14.15.0", + "stylelint-no-unsupported-browser-features": "6.0.1", + "stylelint-order": "5.0.0", + "stylelint-scss": "4.3.0", + "typescript": "4.8.4" + }, + "lint-staged": { + "src/**/*.{js,jsx,ts,tsx,json,css,scss,md}": [ + "prettier --config ./.prettierrc.js --write" + ], + "src/**/*.{js,jsx,ts,tsx}": [ + "eslint" + ], + "src/**/*.{css,scss}": [ + "stylelint" + ] + }, + "overrides": { + "eslint": "7.17.0" + } +} diff --git a/public/assets/android-chrome-192x192.png b/public/assets/android-chrome-192x192.png new file mode 100644 index 0000000..0c6e13c Binary files /dev/null and b/public/assets/android-chrome-192x192.png differ diff --git a/public/assets/android-chrome-512x512.png b/public/assets/android-chrome-512x512.png new file mode 100644 index 0000000..71cb9f7 Binary files /dev/null and b/public/assets/android-chrome-512x512.png differ diff --git a/public/assets/apple-touch-icon.png b/public/assets/apple-touch-icon.png new file mode 100644 index 0000000..e37ce2d Binary files /dev/null and b/public/assets/apple-touch-icon.png differ diff --git a/public/assets/favicon-16x16.png b/public/assets/favicon-16x16.png new file mode 100644 index 0000000..d131db7 Binary files /dev/null and b/public/assets/favicon-16x16.png differ diff --git a/public/assets/favicon-32x32.png b/public/assets/favicon-32x32.png new file mode 100644 index 0000000..34ac039 Binary files /dev/null and b/public/assets/favicon-32x32.png differ diff --git a/public/assets/favicon.ico b/public/assets/favicon.ico new file mode 100644 index 0000000..124d660 Binary files /dev/null and b/public/assets/favicon.ico differ diff --git a/public/assets/manifest.json b/public/assets/manifest.json new file mode 100644 index 0000000..cbf50e1 --- /dev/null +++ b/public/assets/manifest.json @@ -0,0 +1,24 @@ +{ + "name": "Pera Wallet", + "short_name": "Pera Wallet", + "icons": [ + { + "src": "favicon.ico", + "sizes": "64x64 32x32 24x24 16x16", + "type": "image/x-icon" + }, + { + "src": "android-chrome-192x192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "android-chrome-512x512.png", + "sizes": "512x512", + "type": "image/png" + } + ], + "theme_color": "#F3F3F7", + "background_color": "#F3F3F7", + "display": "standalone" +} diff --git a/public/assets/mstile-icon-144x144.png b/public/assets/mstile-icon-144x144.png new file mode 100644 index 0000000..0c8c38b Binary files /dev/null and b/public/assets/mstile-icon-144x144.png differ diff --git a/public/assets/mstile-icon-150x150.png b/public/assets/mstile-icon-150x150.png new file mode 100644 index 0000000..978791c Binary files /dev/null and b/public/assets/mstile-icon-150x150.png differ diff --git a/public/assets/mstile-icon-310x310.png b/public/assets/mstile-icon-310x310.png new file mode 100644 index 0000000..81e0264 Binary files /dev/null and b/public/assets/mstile-icon-310x310.png differ diff --git a/public/assets/mstile-icon-70x70.png b/public/assets/mstile-icon-70x70.png new file mode 100644 index 0000000..18dcb84 Binary files /dev/null and b/public/assets/mstile-icon-70x70.png differ diff --git a/public/assets/safari-pinned-tab.svg b/public/assets/safari-pinned-tab.svg new file mode 100644 index 0000000..212a88e --- /dev/null +++ b/public/assets/safari-pinned-tab.svg @@ -0,0 +1,32 @@ + + + + +Created by potrace 1.14, written by Peter Selinger 2001-2017 + + + + + + + + + + diff --git a/public/assets/site.webmanifest b/public/assets/site.webmanifest new file mode 100644 index 0000000..03f656c --- /dev/null +++ b/public/assets/site.webmanifest @@ -0,0 +1,19 @@ +{ + "name": "Pera Wallet", + "short_name": "Pera Wallet", + "icons": [ + { + "src": "/android-chrome-192x192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "/android-chrome-512x512.png", + "sizes": "512x512", + "type": "image/png" + } + ], + "theme_color": "#F3F3F7", + "background_color": "#F3F3F7", + "display": "standalone" +} diff --git a/public/browserconfig.xml b/public/browserconfig.xml new file mode 100644 index 0000000..ec3474e --- /dev/null +++ b/public/browserconfig.xml @@ -0,0 +1,9 @@ + + + + + + #ffed06 + + + diff --git a/public/index.html b/public/index.html new file mode 100644 index 0000000..08faae6 --- /dev/null +++ b/public/index.html @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + Pera Wallet + + + + +
+ +
+ + diff --git a/public/robots.txt b/public/robots.txt new file mode 100644 index 0000000..e9e57dc --- /dev/null +++ b/public/robots.txt @@ -0,0 +1,3 @@ +# https://www.robotstxt.org/robotstxt.html +User-agent: * +Disallow: diff --git a/src/account/accountModels.ts b/src/account/accountModels.ts new file mode 100644 index 0000000..afedee2 --- /dev/null +++ b/src/account/accountModels.ts @@ -0,0 +1,14 @@ +export interface AccountBackup { + id: string; + encrypted_backup: null; + date_created: string; + modification_key: string; +} + +// private_key is a stringified uint8Array +export type MobileSyncAccount = {name: string; private_key: string}; + +export type EncryptedPeraMobileAccounts = { + device_id: string; + accounts: string; +}; diff --git a/src/account/component/account-creation-animation/AccountCreationAnimation.tsx b/src/account/component/account-creation-animation/AccountCreationAnimation.tsx new file mode 100644 index 0000000..6705ad0 --- /dev/null +++ b/src/account/component/account-creation-animation/AccountCreationAnimation.tsx @@ -0,0 +1,94 @@ +import {ReactComponent as CheckmarkIcon} from "../../../core/ui/icons/checkmark.svg"; +import "./_account-creation-animation.scss"; + +import {useEffect} from "react"; +import {List} from "@hipo/react-ui-toolkit"; + +import {ACCOUNT_CREATION_LOADING_TEXTS} from "./util/accountCreationAnimationConstants"; +import {shuffleArray} from "../../../core/util/array/arrayUtils"; +import ROUTES from "../../../core/route/routes"; +import useNavigateFlow from "../../../core/route/navigate/useNavigateFlow"; +import PeraLoader from "../../../component/loader/pera/PeraLoader"; +import { + ConnectFlowState, + useConnectFlowContext +} from "../../../connect/context/ConnectFlowContext"; +import {AccountComponentFlows} from "../../util/accountTypes"; + +interface AccountCreationAnimationProps { + type: "CREATE" | "IMPORT"; + flow?: AccountComponentFlows; + successMessage?: string; +} + +const ANIMATION_TIMEOUT = 4000; + +function AccountCreationAnimation({ + type, + flow = "default", + successMessage = "Account created!" +}: AccountCreationAnimationProps) { + const {dispatchFormitoAction} = useConnectFlowContext(); + const randomizedLoadingTexts = shuffleArray( + ACCOUNT_CREATION_LOADING_TEXTS + // eslint-disable-next-line no-magic-numbers + ).slice(0, 2); + const navigate = useNavigateFlow(); + + useEffect(() => { + const timeout = setTimeout(() => { + // default is CREATE + let formitoActionPayload = { + createAccountViews: "success" + } as Partial; + let navigateTo = ROUTES.ACCOUNT.CREATE.SUCCESS.FULL_PATH as string; + + if (type === "IMPORT") { + formitoActionPayload = {importAccountViews: "success"}; + navigateTo = ROUTES.ACCOUNT.IMPORT.PASSPHRASE.SUCCESS.FULL_PATH; + } + + if (flow !== "connect") { + navigate(navigateTo); + return; + } + + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: formitoActionPayload + }); + }, ANIMATION_TIMEOUT); + + return () => { + clearTimeout(timeout); + }; + }, [navigate, type, dispatchFormitoAction, flow]); + + return ( +
+
+ + + +
+ + + {(item) => ( +
  • + {item} +
  • + )} +
    +
    + ); +} + +export default AccountCreationAnimation; diff --git a/src/account/component/account-creation-animation/_account-creation-animation.scss b/src/account/component/account-creation-animation/_account-creation-animation.scss new file mode 100644 index 0000000..d637dc5 --- /dev/null +++ b/src/account/component/account-creation-animation/_account-creation-animation.scss @@ -0,0 +1,181 @@ +.account-creation-animation { + width: 424px; + height: 510px; +} + +.account-creation-animation__icon-wrapper { + position: relative; + + width: 56px; + height: 56px; + + margin: 186px auto 28px; + + background-color: var(--helper-purple-default); + border-radius: 50%; + + animation: accountCreationIconColor 1s forwards; + animation-delay: 3s; +} + +.account-creation-animation__icon--lottie-wrapper { + background-color: transparent; +} + +.account-creation-animation__icon--lottie { + width: 56px; + height: 56px; + + animation: accountCreationFadeOut 1s forwards; + animation-delay: 3s; +} + +.account-creation-animation__icon--checkmark { + position: absolute; + top: 50%; + left: 50%; + + width: 30px; + height: 30px; + + transform: translate(-50%, -50%) scale(0); + + animation: accountCreationFadeIn 1s forwards; + animation-delay: 3s; + + path { + fill: var(--primary-button-text); + } +} + +.account-creation-animation__loading-text-list { + position: relative; +} + +.account-creation-animation__loading-text-list-item { + position: absolute; + top: 0; + left: 50%; + + width: 100%; + + opacity: 0; + + text-align: center; + + transform: translateX(-50%); + + &:nth-child(1) { + animation: firstAccountCreationSlide 4s forwards; + } + + &:nth-child(2) { + animation: secondAccountCreationSlide 2s forwards; + animation-delay: 2s; + } + + &:nth-child(3) { + animation: thirdAccountCreationSlide 1s forwards; + animation-delay: 3s; + } +} + +@keyframes accountCreationFadeOut { + from { + transform: scale(100%); + } + + to { + transform: scale(0); + } +} + +@keyframes accountCreationFadeIn { + from { + transform: translate(-50%, -50%) scale(0); + } + + to { + transform: translate(-50%, -50%) scale(100%); + } +} + +@keyframes accountCreationIconColor { + from { + background-color: var(--helper-purple-default); + } + + to { + background-color: var(--helper-green-default); + } +} + +@keyframes firstAccountCreationSlide { + 0% { + top: 0; + + opacity: 1; + + transform: translateX(-50%); + } + + 50% { + top: 0; + + opacity: 1; + + transform: translateX(-50%); + } + + 75% { + top: 40px; + + opacity: 0.5; + + transform: translateX(-50%) scale(80%); + } + + 100% { + top: 80px; + + opacity: 0.3; + + transform: translateX(-50%) scale(60%); + } +} + +@keyframes secondAccountCreationSlide { + 0% { + top: 0; + + opacity: 0; + + transform: translateX(-50%); + } + + 50% { + top: 0; + + opacity: 1; + + transform: translateX(-50%); + } + + 100% { + top: 40px; + + opacity: 0.5; + + transform: translateX(-50%) scale(80%); + } +} + +@keyframes thirdAccountCreationSlide { + 0% { + opacity: 0; + } + + 100% { + opacity: 1; + } +} diff --git a/src/account/component/account-creation-animation/util/accountCreationAnimationConstants.ts b/src/account/component/account-creation-animation/util/accountCreationAnimationConstants.ts new file mode 100644 index 0000000..3b8dbc5 --- /dev/null +++ b/src/account/component/account-creation-animation/util/accountCreationAnimationConstants.ts @@ -0,0 +1,87 @@ +const ACCOUNT_CREATION_LOADING_TEXTS = [ + "Adding Hidden Agendas", + "Adjusting Bell Curves", + "Aesthesizing Industrial Areas", + "Aligning Covariance Matrices", + "Applying Feng Shui Shaders", + "Applying Theatre Soda Layer", + "Asserting Packed Exemplars", + "Attempting to Lock Back-Buffer", + "Binding Sapling Root System", + "Breeding Fauna", + "Building Data Trees", + "Bureacritizing Bureaucracies", + "Calibrating Blue Skies", + "Charging Ozone Layer", + "Coalescing Cloud Formations", + "Cohorting Exemplars", + "Collecting Meteor Particles", + "Compounding Inert Tessellations", + "Compressing Fish Files", + "Computing Optimal Bin Packing", + "Concatenating Sub-Contractors", + "Containing Existential Buffer", + "Debarking Ark Ramp", + "Decomposing Singular Values", + "Decrementing Tectonic Plates", + "Deleting Ferry Routes", + "Depositing Slush Funds", + "Destabilizing Economic Indicators", + "Determining Width of Blast Fronts", + "Deunionizing Bulldozers", + "Dicing Models", + "Extracting Resources", + "Factoring Pay Scale", + "Fixing Election Outcome Matrix", + "Flood-Filling Ground Water", + "Flushing Pipe Network", + "Gathering Particle Sources", + "Generating Jobs", + "Gesticulating Mimes", + "Graphing Whale Migration", + "Hiding Willio Webnet Mask", + "Implementing Impeachment Routine", + "Increasing Magmafacation", + "Inserting Sublimated Messages", + "Integrating Curves", + "Integrating Population Graphs", + "Iterating Cellular Automata", + "Lecturing Errant Subsystems", + "Mixing Genetic Pool", + "Modeling Object Components", + "Mopping Occupant Leaks", + "Normalizing Power", + "Obfuscating Quigley Matrix", + "Perturbing Matrices", + "Pixalating Nude Patch", + "Polishing Water Highlights", + "Populating Lot Templates", + "Preparing Sprites for Random Walks", + "Prioritizing Landmarks", + "Realigning Alternate Time Frames", + "Relaxing Splines", + "Removing Texture Gradients", + "Resolving GUID Conflict", + "Reticulating Splines", + "Retracting Phong Shader", + "Retrieving from Back Store", + "Scattering Rhino Food Sources", + "Scrubbing Terrain", + "Searching for Llamas", + "Sequencing Particles", + "Setting Advisor Moods", + "Setting Inner Deity Indicators", + "Setting Universal Physical Constants", + "Speculating Stock Market Indices", + "Splatting Transforms", + "Stratifying Ground Layers", + "Sub-Sampling Water Data", + "Synthesizing Gravity", + "Synthesizing Wavelets", + "Time-Compressing Simulator Clock", + "Unable to Reveal Current Activity", + "Weathering Buildings", + "Zeroing Crime Network" +]; + +export {ACCOUNT_CREATION_LOADING_TEXTS}; diff --git a/src/account/component/account-list/account-list-item-content/AccountListItemContent.tsx b/src/account/component/account-list/account-list-item-content/AccountListItemContent.tsx new file mode 100644 index 0000000..c817a8b --- /dev/null +++ b/src/account/component/account-list/account-list-item-content/AccountListItemContent.tsx @@ -0,0 +1,55 @@ +import "./_account-list-item-content.scss"; + +import classNames from "classnames"; + +import {getAccountIcon, trimAccountAddress} from "../../../util/accountUtils"; +import {ALGO_UNIT} from "../../../../core/ui/typography/typographyConstants"; +import {defaultPriceFormatter} from "../../../../core/util/number/numberUtils"; + +export type AccountListItemContentProps = { + address: string; + accountType?: AccountType; + name?: string; + balance?: string; +}; + +function AccountListItemContent({ + accountType, + name, + address, + balance +}: AccountListItemContentProps) { + const {algoFormatter} = defaultPriceFormatter(); + const accountAddressClassname = classNames({ + "typography--secondary-body text-color--gray-light": name, + "typography--body": !name + }); + + return ( +
    + {getAccountIcon({type: accountType, width: 32, height: 32})} + +
    + {name && ( + + {name} + + )} + + {trimAccountAddress(address)} +
    + + {balance && ( +
    {`${ALGO_UNIT}${algoFormatter(Number(balance), { + maximumFractionDigits: 2 + })} + `}
    + )} +
    + ); +} + +export default AccountListItemContent; diff --git a/src/account/component/account-list/account-list-item-content/_account-list-item-content.scss b/src/account/component/account-list/account-list-item-content/_account-list-item-content.scss new file mode 100644 index 0000000..87e5e56 --- /dev/null +++ b/src/account/component/account-list/account-list-item-content/_account-list-item-content.scss @@ -0,0 +1,40 @@ +.account-list-item-content { + position: relative; + + display: grid; + align-items: center; + grid-template-columns: 32px 240px 1fr; + grid-gap: 0 16px; + + &:not(:last-child):after { + position: absolute; + + bottom: -16px; + + width: 100%; + + border-bottom: solid 1px var(--gray-200); + + content: ""; + } + + .account-list-item-content__wallet-icon { + display: grid; + + width: 32px; + height: 32px; + + background: #8bf4db; + border-radius: 100%; + place-content: center; + } + + .account-list-item-content__account-info { + display: flex; + flex-direction: column; + } + + .account-balance { + margin-left: auto; + } +} diff --git a/src/account/component/account-mnemonic-form/AccountMnemonicForm.tsx b/src/account/component/account-mnemonic-form/AccountMnemonicForm.tsx new file mode 100644 index 0000000..50f75f1 --- /dev/null +++ b/src/account/component/account-mnemonic-form/AccountMnemonicForm.tsx @@ -0,0 +1,119 @@ +import React, {SyntheticEvent} from "react"; +import {FormField, Input, useToaster} from "@hipo/react-ui-toolkit"; + +import "./_account-mnemonic-form.scss"; + +import {generateNumberArray, replaceAtIndex} from "../../../core/util/array/arrayUtils"; +import {MNEMONIC_LENGTH} from "../../util/accountConstants"; +import Button from "../../../component/button/Button"; +import useFormito from "../../../core/util/hook/formito/useFormito"; +import {validatePassphraseForm} from "../../page/import/passphrase/recovery/util/accountImportPassphraseRecoveryUtils"; +import {MNEMONIC_KEYS_COMMA_OR_SPACE_REGEX} from "./util/accountMnemonicFormConstants"; +import PeraToast from "../../../component/pera-toast/PeraToast"; + +interface AccountMnemonicFormProps { + onFormSubmit: (mnemonicKeys: string[]) => void; +} + +const initialMnemonicForm = { + mnemonicKeys: [] as string[] +}; + +function AccountMnemonicForm({onFormSubmit}: AccountMnemonicFormProps) { + const { + formitoState: {mnemonicKeys}, + dispatchFormitoAction: dispatchMnemonicFormAction + } = useFormito(initialMnemonicForm); + const toaster = useToaster(); + + return ( +
    + {generateNumberArray(MNEMONIC_LENGTH).map((cellNumber) => ( + + + + ))} + + +
    + ); + + function handleFormSubmit(event: SyntheticEvent) { + event.preventDefault(); + + onFormSubmit(mnemonicKeys); + } + + function handlePaste(event: React.ClipboardEvent) { + const clipboardData = event.clipboardData.getData("text"); + let clipboardWordList: string[] = []; + + if (clipboardData) { + clipboardWordList = clipboardData.split(MNEMONIC_KEYS_COMMA_OR_SPACE_REGEX); + } + + if (clipboardWordList.length === MNEMONIC_LENGTH) { + dispatchMnemonicFormAction({ + type: "SET_FORM_VALUE", + payload: { + mnemonicKeys: clipboardWordList + } + }); + } else { + toaster.display({ + render() { + return ( + + ); + } + }); + } + } + + function handleChange(event: SyntheticEvent) { + // @ts-ignore nativeEvent has not `inputType` in SyntheticEvent + if (event.nativeEvent.inputType !== "insertFromPaste") { + const [_mnemonic, _cell, inputIndex] = event.currentTarget.name.split("-"); + + dispatchMnemonicFormAction({ + type: "SET_FORM_VALUE", + payload: { + mnemonicKeys: replaceAtIndex( + mnemonicKeys, + Number(inputIndex), + event.currentTarget.value + ) + } + }); + } + } +} + +export default React.memo(AccountMnemonicForm); diff --git a/src/account/component/account-mnemonic-form/_account-mnemonic-form.scss b/src/account/component/account-mnemonic-form/_account-mnemonic-form.scss new file mode 100644 index 0000000..4394edc --- /dev/null +++ b/src/account/component/account-mnemonic-form/_account-mnemonic-form.scss @@ -0,0 +1,23 @@ +.account-mnemonic-form__grid { + display: grid; + grid-template: repeat(6, 1fr) / repeat(5, 1fr); + gap: 32px 16px; +} + +.account-mnemonic-form__grid-cell { + width: 120px; + height: 72px; + + margin: 0; +} + +.account-mnemonic-form__grid-input .input { + width: 100%; +} + +.account-mnemonic-form__cta { + width: 424px; + grid-column: 1/-1; + + margin: auto auto 0; +} diff --git a/src/account/component/account-mnemonic-form/util/accountMnemonicFormConstants.ts b/src/account/component/account-mnemonic-form/util/accountMnemonicFormConstants.ts new file mode 100644 index 0000000..b57062c --- /dev/null +++ b/src/account/component/account-mnemonic-form/util/accountMnemonicFormConstants.ts @@ -0,0 +1,3 @@ +const MNEMONIC_KEYS_COMMA_OR_SPACE_REGEX = /[, ]+/; + +export {MNEMONIC_KEYS_COMMA_OR_SPACE_REGEX}; diff --git a/src/account/component/account-name-form/AccountNameForm.tsx b/src/account/component/account-name-form/AccountNameForm.tsx new file mode 100644 index 0000000..cfe1cd8 --- /dev/null +++ b/src/account/component/account-name-form/AccountNameForm.tsx @@ -0,0 +1,116 @@ +import "./_account-name-form.scss"; + +import {ComponentProps, SyntheticEvent} from "react"; +import {FormField, Input, useToaster} from "@hipo/react-ui-toolkit"; + +import {validateAccountCreateForm} from "../../util/accountUtils"; +import {useAppContext} from "../../../core/app/AppContext"; +import PeraToast from "../../../component/pera-toast/PeraToast"; +import Button from "../../../component/button/Button"; +import useFormito from "../../../core/util/hook/formito/useFormito"; + +interface AccountNameFormProps extends Omit, "onSubmit"> { + ctaText: string; + onFormSubmit: (accountName: string) => unknown; + description?: string; + currentName?: string; +} + +function AccountNameForm({ + ctaText, + onFormSubmit, + currentName = "", + description = "Name your account to easily identify it while using Pera Wallet. These names are stored locally, and can only be seen by you.", + ...formProps +}: AccountNameFormProps) { + const { + state: {accounts} + } = useAppContext(); + const toaster = useToaster(); + const { + formitoState: {accountName}, + dispatchFormitoAction + } = useFormito({accountName: currentName}); + + return ( +
    + {description && ( +

    + {description} +

    + )} + + + {/* Animated placeholder PR Link: https://github.com/perawallet/pera-wallet-web/pull/26 + We may consider to make it component in the future */} +

    + {"How about "} + +

    + + +
    + + +
    + ); + + function handleFormSubmit(event: SyntheticEvent) { + event.preventDefault(); + + const validationInfo = validateAccountCreateForm(accounts, accountName as string); + + if (validationInfo) { + return toaster.display({ + render() { + return ( + + ); + } + }); + } + + return onFormSubmit(accountName as string); + } + + function handleAccountNameChange(event: SyntheticEvent) { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + accountName: event.currentTarget.value + } + }); + } +} + +export default AccountNameForm; diff --git a/src/account/component/account-name-form/_account-name-form.scss b/src/account/component/account-name-form/_account-name-form.scss new file mode 100644 index 0000000..bdc8adf --- /dev/null +++ b/src/account/component/account-name-form/_account-name-form.scss @@ -0,0 +1,121 @@ +.account-name-form__name-description { + margin-bottom: 20px; +} + +.account-name-form__cta { + width: 100%; + + margin-top: 242px; +} + +.account-name-form__name-input-box { + position: relative; + + .form-field__title { + margin-bottom: 8px; + } +} + +.account-name-form__name-input { + .input { + &:placeholder-shown { + z-index: 1; + } + + &:not(:placeholder-shown) { + z-index: 3; + } + } +} + +.account-name-form__name-input__placeholder { + position: absolute; + bottom: 12px; + z-index: 2; + + cursor: text; + + transition: opacity var(--default-animation); +} + +.account-name-form__name-input__placeholder__animated { + &:before { + content: "Silvio?"; + + animation: fadeAnimation 10s infinite; + } +} + +@keyframes fadeAnimation { + 0% { + opacity: 0; + + content: "Silvio?"; + } + + 9% { + opacity: 1; + + content: "Silvio?"; + } + + 18% { + opacity: 0; + + content: "Silvio?"; + } + + 27% { + opacity: 0; + + content: "OG?"; + } + + 36% { + opacity: 1; + + content: "OG?"; + } + + 45% { + opacity: 0; + + content: "OG?"; + } + + 54% { + opacity: 0; + + content: "HODL?"; + } + + 63% { + opacity: 1; + + content: "HODL?"; + } + + 72% { + opacity: 0; + + content: "HODL?"; + } + + 81% { + opacity: 0; + + content: "Whale Account?"; + } + + 90% { + opacity: 1; + + content: "Whale Account?"; + } + + 100% { + opacity: 0; + + content: "Whale Account?"; + } +} diff --git a/src/account/component/account-remove-modal/AccountRemoveModal.tsx b/src/account/component/account-remove-modal/AccountRemoveModal.tsx new file mode 100644 index 0000000..74e28e3 --- /dev/null +++ b/src/account/component/account-remove-modal/AccountRemoveModal.tsx @@ -0,0 +1,134 @@ +import {ReactComponent as UnlinkIcon} from "../../../core/ui/icons/unlink.svg"; + +import "./_account-remove-modal.scss"; + +import Button from "../../../component/button/Button"; +import {useModalDispatchContext} from "../../../component/modal/context/ModalContext"; +import {useAppContext} from "../../../core/app/AppContext"; +import PasswordAccessPage, { + PASSWORD_ACCESS_MODAL_ID +} from "../../../password/page/access/PasswordAccessPage"; +import {useSimpleToaster} from "../../../component/simple-toast/util/simpleToastHooks"; +import {appDBManager} from "../../../core/app/db"; + +interface AccountRemoveModalProps { + account: AppDBAccount; +} + +export const ACCOUNT_REMOVE_MODAL_ID = "remove-account-modal"; + +function AccountRemoveModal({account}: AccountRemoveModalProps) { + const { + state: {masterkey}, + dispatch + } = useAppContext(); + const dispatchModalStateAction = useModalDispatchContext(); + const simpleToaster = useSimpleToaster(); + + return ( +
    +
    +
    + +
    + +

    + {"Remove account"} +

    + +

    + {"You are about to unlink your account "} + {`"${account.name}"`} + { + " from this device. This does not delete the account, but to re-add it in future, you will need to import it again with your 25 word passphrase." + } +

    +
    + + + + +
    + ); + + function handleConfirmClick() { + closeModal(); + + dispatchModalStateAction({ + type: "OPEN_MODAL", + payload: { + item: { + id: PASSWORD_ACCESS_MODAL_ID, + modalContentLabel: "Remove Account Confirmation", + children: ( + + ) + } + } + }); + } + + async function handlePasswordAccessRemoveAccount() { + if (!masterkey) return; + + try { + await appDBManager.delete("accounts")({ + key: account.address, + encryptionKey: masterkey + }); + + dispatch({ + type: "REMOVE_ACCOUNT", + address: account.address + }); + + closeModal(); + + simpleToaster.display({ + type: "info", + message: `Account "${account.name}" removed!` + }); + } catch (error) { + console.error(error); + + simpleToaster.display({ + type: "error", + message: `There is an error removing "${account.name}".` + }); + } + } + + function handleCancelClick() { + closeModal(); + } + + function closeModal() { + dispatchModalStateAction({ + type: "CLOSE_ALL_MODALS" + }); + } +} + +export default AccountRemoveModal; diff --git a/src/account/component/account-remove-modal/_account-remove-modal.scss b/src/account/component/account-remove-modal/_account-remove-modal.scss new file mode 100644 index 0000000..ca5e2f8 --- /dev/null +++ b/src/account/component/account-remove-modal/_account-remove-modal.scss @@ -0,0 +1,44 @@ +.account-remove-modal__hero { + display: flex; + flex-direction: column; + justify-content: center; + + margin-bottom: 48px; + + text-align: center; +} + +.account-remove-modal__hero-unlink-icon-wrapper { + display: grid; + + width: 106px; + height: 106px; + + margin: 28px auto 32px; + + background-color: var(--card-default); + border-radius: 100%; + box-shadow: var(--shadow-large); + + place-content: center; + + .unlink-icon { + path { + fill: var(--helper-red-default); + } + } +} + +.account-remove-modal__hero-title { + margin-bottom: 16px; +} + +.account-remove-modal__confirm-cta { + width: 100%; +} + +.account-remove-modal__cancel-cta { + width: 100%; + + margin-top: 8px; +} diff --git a/src/account/component/account-rename-modal/AccountRenameModal.tsx b/src/account/component/account-rename-modal/AccountRenameModal.tsx new file mode 100644 index 0000000..0138221 --- /dev/null +++ b/src/account/component/account-rename-modal/AccountRenameModal.tsx @@ -0,0 +1,83 @@ +import "./_account-rename-modal.scss"; + +import Button from "../../../component/button/Button"; +import AccountNameForm from "../account-name-form/AccountNameForm"; +import {useAppContext} from "../../../core/app/AppContext"; +import {useModalDispatchContext} from "../../../component/modal/context/ModalContext"; +import {useSimpleToaster} from "../../../component/simple-toast/util/simpleToastHooks"; +import {appDBManager} from "../../../core/app/db"; + +interface AccountRenameModalProps { + account: AppDBAccount; +} + +export const ACCOUNT_RENAME_MODAL_ID = "account-rename-modal"; + +function AccountRenameModal({account}: AccountRenameModalProps) { + const { + state: {masterkey}, + dispatch: dispatchAppState + } = useAppContext(); + const dispatchModalStateAction = useModalDispatchContext(); + const simpleToaster = useSimpleToaster(); + + return ( +
    +

    + {"Name your account"} +

    + + + + +
    + ); + + async function handleRenameAccountSubmit(accountName: string) { + const {address, pk, date} = account; + + const renamedAccount = { + type: "standard" as AccountType, + name: accountName, + address, + pk, + date + }; + + await appDBManager.set("accounts", masterkey!)(address, renamedAccount); + + dispatchAppState({type: "SET_ACCOUNT", account: renamedAccount}); + + closeModal(); + + simpleToaster.display({ + message: "Account name changed", + type: "success" + }); + } + + function handleCancelClick() { + closeModal(); + } + + function closeModal() { + dispatchModalStateAction({ + type: "CLOSE_MODAL", + payload: { + id: ACCOUNT_RENAME_MODAL_ID + } + }); + } +} + +export default AccountRenameModal; diff --git a/src/account/component/account-rename-modal/_account-rename-modal.scss b/src/account/component/account-rename-modal/_account-rename-modal.scss new file mode 100644 index 0000000..bf39b0c --- /dev/null +++ b/src/account/component/account-rename-modal/_account-rename-modal.scss @@ -0,0 +1,17 @@ +.account-rename-modal { + width: 424px; + + .account-name-form__cta { + margin-top: 120px; + } +} + +.account-rename-modal__title { + margin-bottom: 32px; +} + +.account-rename-modal__cancel-cta { + width: 100%; + + margin-top: 8px; +} diff --git a/src/account/component/list/empty/EmptyAccountList.tsx b/src/account/component/list/empty/EmptyAccountList.tsx new file mode 100644 index 0000000..d30c4d9 --- /dev/null +++ b/src/account/component/list/empty/EmptyAccountList.tsx @@ -0,0 +1,31 @@ +import {ReactComponent as EmptyWalletIcon} from "../../../../core/ui/icons/empty-wallet.svg"; +import {ReactComponent as PlusIcon} from "../../../../core/ui/icons/plus.svg"; + +import "./_empty-account-list.scss"; + +import LinkButton from "../../../../component/button/LinkButton"; +import ROUTES from "../../../../core/route/routes"; + +function EmptyAccountList() { + return ( +
    + + +

    + {"You have no accounts yet"} +

    + +

    + {"Add your first account to Pera Web"} +

    + + + + + {"Add Acccount"} + +
    + ); +} + +export default EmptyAccountList; diff --git a/src/account/component/list/empty/_empty-account-list.scss b/src/account/component/list/empty/_empty-account-list.scss new file mode 100644 index 0000000..a733e78 --- /dev/null +++ b/src/account/component/list/empty/_empty-account-list.scss @@ -0,0 +1,27 @@ +.empty-account-list { + margin: auto; + + text-align: center; + + .empty-wallet-icon { + margin-bottom: 32px; + + path { + fill: var(--text-gray-light); + } + } +} + +.empty-account-list__cta { + display: flex; + gap: 8px; + + width: 240px; + height: 48px; + + margin: 48px auto 0; + + .plus-icon path { + fill: var(--primary-button-text); + } +} diff --git a/src/account/component/list/searchable/SearchableAccountList.tsx b/src/account/component/list/searchable/SearchableAccountList.tsx new file mode 100644 index 0000000..476a399 --- /dev/null +++ b/src/account/component/list/searchable/SearchableAccountList.tsx @@ -0,0 +1,74 @@ +import "./_searchable-account-list.scss"; + +import {useState} from "react"; +import classNames from "classnames"; + +import SearchableList from "../../../../component/list/searchable-list/SearchableList"; +import SelectableListItem from "../../../../component/list/selectable-list-item/SelectableListItem"; +import {useAppContext} from "../../../../core/app/AppContext"; +import {PortfolioOverview} from "../../../../overview/util/hook/usePortfolioOverview"; +import AccountListItemContent from "../../account-list/account-list-item-content/AccountListItemContent"; +import EmptyAccountList from "../empty/EmptyAccountList"; + +interface SearchableAccountListProps { + accounts: PortfolioOverview["accounts"]; + onSelectAccount: (address: string) => void; + customClassName?: string; +} + +function SearchableAccountList({ + accounts: searchableAccounts, + onSelectAccount, + customClassName +}: SearchableAccountListProps) { + const [filteredAccounts, setFilteredAccounts] = + useState(searchableAccounts); + const { + state: {accounts} + } = useAppContext(); + const { + state: {hasAccounts} + } = useAppContext(); + + if (!hasAccounts) return ; + + return ( + + {(account: AccountOverview) => ( + + + + )} + + ); + + function handleFilterAccount(value: string) { + const query = value.toLowerCase(); + const queriedAccounts = searchableAccounts.filter( + (account) => + account.address.toLowerCase().includes(query) || + (account?.accountName && account.accountName.toLowerCase().includes(query)) + ); + + setFilteredAccounts(queriedAccounts); + } +} + +export default SearchableAccountList; diff --git a/src/account/component/list/searchable/_searchable-account-list.scss b/src/account/component/list/searchable/_searchable-account-list.scss new file mode 100644 index 0000000..0b336c9 --- /dev/null +++ b/src/account/component/list/searchable/_searchable-account-list.scss @@ -0,0 +1,26 @@ +@import "../../../../core/ui/typography/_typography-mixins.scss"; + +.searchable-account-list { + display: flex; + flex-direction: column; + + .searchable-list { + height: 426px; + } +} + +.searchable-account-list-search { + margin: 0 28px 24px; +} + +.searchable-account-list-item { + padding-bottom: 16px; + + &:not(:last-child) { + border-bottom: 1px solid var(--gray-100); + } + + .account-balance { + @include typography--bold-body(); + } +} diff --git a/src/account/component/list/selectable/SelectableAccountList.tsx b/src/account/component/list/selectable/SelectableAccountList.tsx new file mode 100644 index 0000000..c0d053c --- /dev/null +++ b/src/account/component/list/selectable/SelectableAccountList.tsx @@ -0,0 +1,149 @@ +import "./_selectable-account-list.scss"; + +import {useCallback, useEffect} from "react"; +import {CheckboxInput, List} from "@hipo/react-ui-toolkit"; +import classNames from "classnames"; + +import SelectableListItem from "../../../../component/list/selectable-list-item/SelectableListItem"; +import useFormito from "../../../../core/util/hook/formito/useFormito"; +import Button from "../../../../component/button/Button"; +import AccountListItemContent from "../../account-list/account-list-item-content/AccountListItemContent"; +import {useAppContext} from "../../../../core/app/AppContext"; +import {trimAccountAddress, trimAccountName} from "../../../util/accountUtils"; +import {PortfolioOverview} from "../../../../overview/util/hook/usePortfolioOverview"; + +type ConditionalSelectableAccountListPropTypes = + | { + isMultipleSelect: true; + onSelect: (selectedAccounts: Record) => void; + } + | { + isMultipleSelect?: false; + onSelect: (accountAddress: string) => void; + }; + +type SelectableAccountListProps = ConditionalSelectableAccountListPropTypes & { + accounts: PortfolioOverview["accounts"]; + toggleAllCheckboxContent?: React.ReactNode; + isInitiallyAllChecked?: boolean; + customClassName?: string; +}; + +function SelectableAccountList({ + accounts, + onSelect, + isMultipleSelect, + toggleAllCheckboxContent, + isInitiallyAllChecked = false, + customClassName +}: SelectableAccountListProps) { + const { + state: {accounts: contextAccounts} + } = useAppContext(); + const {formitoState, dispatchFormitoAction} = useFormito( + generateInitialSelectAccountsFormitoState(isInitiallyAllChecked) + ); + const selectableAccountListClassname = classNames( + "selectable-account-list", + customClassName, + { + "selectable-account-list__multiple-select": isMultipleSelect + } + ); + + const handleAccountSelect = useCallback( + (id: string, isChecked: boolean) => { + if (isMultipleSelect) { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: {[id]: isChecked} + }); + } else { + onSelect(id); + } + }, + [isMultipleSelect, dispatchFormitoAction, onSelect] + ); + + useEffect(() => { + if (isMultipleSelect) { + onSelect(formitoState); + } + }, [formitoState, isMultipleSelect, onSelect]); + + return ( +
    + {isMultipleSelect && toggleAllCheckboxContent && ( +
    + + {checkIfAllAccountsChecked() ? "Unselect all" : "Select all"} + + ), + inputProps: {htmlFor: "select-all", name: "select-all", value: ""} + }} + /> + + {toggleAllCheckboxContent} +
    + )} + +
      + + {(account) => ( + + + + )} + +
    +
    + ); + + function generateInitialSelectAccountsFormitoState(initialSelectedStatus: boolean) { + const initialState = {} as Record; + + for (const account of Object.values(accounts)) { + initialState[account.address] = initialSelectedStatus; + } + return initialState; + } + + function handleToggleAll() { + dispatchFormitoAction({ + type: "RESET_FORM_STATE", + state: generateInitialSelectAccountsFormitoState(!checkIfAllAccountsChecked()) + }); + } + + function checkIfAllAccountsChecked() { + return Object.values(formitoState).every(Boolean); + } +} + +export default SelectableAccountList; diff --git a/src/account/component/list/selectable/_selectable-account-list.scss b/src/account/component/list/selectable/_selectable-account-list.scss new file mode 100644 index 0000000..f676ec3 --- /dev/null +++ b/src/account/component/list/selectable/_selectable-account-list.scss @@ -0,0 +1,54 @@ +@import "../../../../core/ui/typography/typography-mixins"; + +.selectable-account-list__select-all-button { + --button-height: 24px; + + color: var(--primary-button-bg); + + &:active, + &:focus { + box-shadow: none; + } +} + +.selectable-account-list__select-all-checkbox-wrapper { + justify-content: space-between; + + margin-bottom: 18px; + + padding: 0 16px; +} + +.selectable-account-list__list { + display: grid; + grid-gap: 32px; + + max-height: 320px; + + overflow-y: auto; + + padding: 16px 32px 0 16px; + + background: var(--background); + border-radius: 12px; +} + +.selectable-account-list__list-item { + position: relative; + + &:last-child { + margin-bottom: 16px; + } + + &:not(:last-child):after { + position: absolute; + + bottom: -16px; + + width: 100%; + + border-bottom: solid 1px var(--gray-200); + + content: ""; + } +} diff --git a/src/account/component/onboarding-option-list/AccountOnboardingOptionList.tsx b/src/account/component/onboarding-option-list/AccountOnboardingOptionList.tsx new file mode 100644 index 0000000..bad4248 --- /dev/null +++ b/src/account/component/onboarding-option-list/AccountOnboardingOptionList.tsx @@ -0,0 +1,74 @@ +import {ReactComponent as ArrowRightIcon} from "../../../core/ui/icons/arrow-right.svg"; + +import "./_account-onboarding-option-list.scss"; + +import {List, ListItem} from "@hipo/react-ui-toolkit"; +import {Link, useLocation} from "react-router-dom"; +import classNames from "classnames"; + +import Image from "../../../component/image/Image"; +import {ACCOUNT_ONBOARDING_OPTIONS} from "./util/accountOnboardingOptionListConstants"; +import {useAppContext} from "../../../core/app/AppContext"; + +interface AccountOnboardingOptionListProps { + shouldShowIllustrations?: boolean; + customClassName?: string; +} + +function AccountOnboardingOptionList({ + shouldShowIllustrations = false, + customClassName +}: AccountOnboardingOptionListProps) { + const { + state: {hasAccounts} + } = useAppContext(); + const location = useLocation(); + + return ( + + {({id, icon, helperText, title, to, imgSrc}) => ( + + +
    + {!shouldShowIllustrations && icon} + + {!hasAccounts && ( +

    + {helperText} +

    + )} + +
    +

    + {title} +

    + + +
    +
    + + {shouldShowIllustrations && ( + + )} + +
    + )} +
    + ); +} + +export default AccountOnboardingOptionList; diff --git a/src/account/component/onboarding-option-list/_account-onboarding-option-list.scss b/src/account/component/onboarding-option-list/_account-onboarding-option-list.scss new file mode 100644 index 0000000..23c36db --- /dev/null +++ b/src/account/component/onboarding-option-list/_account-onboarding-option-list.scss @@ -0,0 +1,84 @@ +.account-onboarding-option-list { + display: flex; + flex-wrap: wrap; + gap: 24px; + + .wallet-icon, + .sync-icon, + .key-icon { + margin-bottom: 24px; + } +} + +.account-onboarding-option-list__item-container { + flex: 1 1 0; + + background-color: var(--card-default); + border-radius: 16px; + box-shadow: var(--shadow-small); + + transition: box-shadow var(--default-animation), color var(--default-animation); + + &:hover { + box-shadow: var(--shadow-xxlarge); + + svg path { + fill: var(--helper-purple-default); + } + + .account-onboarding-optin-list__item-title { + color: var(--helper-purple-default); + } + + .arrow-right-icon { + opacity: 1; + } + } +} + +.account-onboarding-option-list__item { + padding: 24px; +} + +.account-onboarding-optin-list__item-title-container { + display: flex; + gap: 8px; + + .arrow-right-icon { + opacity: 0; + + transition: opacity var(--default-animation); + + path { + fill: var(--helper-purple-default); + } + } +} + +.account-onboarding-optin-list__item-title { + width: max-content; +} + +.account-onboarding-optin-list__item-helper-text { + margin-bottom: 8px; +} + +.account-onboarding-option-list__illustration { + &--create { + margin: 0 28px; + } + + &--recovery-passphrase { + margin: 0 0 16px 28px; + } + + &--import-from-mobile { + width: 248px; + + margin: 0 auto; + + .image__img { + display: block; + } + } +} diff --git a/src/account/component/onboarding-option-list/util/accountOnboardingOptionListConstants.tsx b/src/account/component/onboarding-option-list/util/accountOnboardingOptionListConstants.tsx new file mode 100644 index 0000000..1a83c0d --- /dev/null +++ b/src/account/component/onboarding-option-list/util/accountOnboardingOptionListConstants.tsx @@ -0,0 +1,37 @@ +import {ReactComponent as WalletIcon} from "../../../../core/ui/icons/wallet.svg"; +import {ReactComponent as KeyIcon} from "../../../../core/ui/icons/key.svg"; +import {ReactComponent as SyncIcon} from "../../../../core/ui/icons/sync.svg"; +import createAccountImgSrc from "../../../../core/ui/image/create-account-illustration.png"; +import recoveryPassphraseImgSrc from "../../../../core/ui/image/recovery-passphrase-illustration.png"; +import importFromMobileImgSrc from "../../../../core/ui/image/import-from-mobile-illustration.png"; + +import ROUTES from "../../../../core/route/routes"; + +const ACCOUNT_ONBOARDING_OPTIONS = [ + { + id: "create", + icon: , + helperText: "New to Pera?", + to: ROUTES.ACCOUNT.CREATE.FULL_PATH, + title: "Create an account", + imgSrc: createAccountImgSrc + }, + { + id: "recovery-passphrase", + icon: , + helperText: "Already have an account?", + to: ROUTES.ACCOUNT.IMPORT.PASSPHRASE.FULL_PATH, + title: "Use Recovery Passphrase", + imgSrc: recoveryPassphraseImgSrc + }, + { + id: "import-from-mobile", + icon: , + helperText: "Already a Pera Mobile user?", + to: ROUTES.ACCOUNT.IMPORT.PERA_SYNC.FULL_PATH, + title: "Import from Pera Mobile", + imgSrc: importFromMobileImgSrc + } +]; + +export {ACCOUNT_ONBOARDING_OPTIONS}; diff --git a/src/account/flow/AccountFlow.tsx b/src/account/flow/AccountFlow.tsx new file mode 100644 index 0000000..9b3d29b --- /dev/null +++ b/src/account/flow/AccountFlow.tsx @@ -0,0 +1,32 @@ +import {Routes, Route, Navigate} from "react-router-dom"; + +import Page from "../../component/page/Page"; +import {withGoBackLink} from "../../core/route/context/NavigationContext"; +import ROUTES from "../../core/route/routes"; +import AccountLandingPage from "../page/landing/AccountLandingPage"; +import AccountCreateFlow from "./create/AccountCreateFlow"; +import AccountImportFlow from "./import/AccountImportFlow"; + +function AccountFlow() { + return ( + + }> + } /> + + } + /> + + } + /> + + + } /> + + ); +} + +export default withGoBackLink(AccountFlow); diff --git a/src/account/flow/create/AccountCreateFlow.tsx b/src/account/flow/create/AccountCreateFlow.tsx new file mode 100644 index 0000000..f288aeb --- /dev/null +++ b/src/account/flow/create/AccountCreateFlow.tsx @@ -0,0 +1,42 @@ +import {Routes, Route, Navigate} from "react-router-dom"; + +import AccountCreate from "../../page/create/AccountCreate"; +import ROUTES from "../../../core/route/routes"; +import AccountSuccessPage from "../../page/success/AccountSuccessPage"; +import CardLayout from "../../../layouts/card-layout/CardLayout"; +import AccountCreationAnimation from "../../component/account-creation-animation/AccountCreationAnimation"; +import NavigateFlow from "../../../core/route/navigate/NavigateFlow"; +import {withGoBackLink} from "../../../core/route/context/NavigationContext"; + +function AccountCreateFlow() { + return ( + + }> + {/* Account Create Flow */} + } /> + + + + + } + /> + + } /> + + + + + + } + /> + + ); +} + +export default withGoBackLink(AccountCreateFlow); diff --git a/src/account/flow/import/AccountImportFlow.tsx b/src/account/flow/import/AccountImportFlow.tsx new file mode 100644 index 0000000..6284d1e --- /dev/null +++ b/src/account/flow/import/AccountImportFlow.tsx @@ -0,0 +1,96 @@ +import {Routes, Route, Navigate} from "react-router-dom"; + +import ROUTES from "../../../core/route/routes"; +import CardLayout from "../../../layouts/card-layout/CardLayout"; +import AccountImportPassphraseName from "../../page/import/passphrase/name/AccountImportPassphraseName"; +import AccountImportPassphrasePrepare from "../../page/import/passphrase/prepare/AccountImportPassphrasePrepare"; +import AccountImportPassphraseRecovery from "../../page/import/passphrase/recovery/AccountImportPassphraseRecovery"; +import AccountImportPeraSyncPrepare from "../../page/import/pera-sync/prepare/AccountImportPeraSyncPrepare"; +import AccountQRCodeSync from "../../page/qr-code-sync/AccountQRCodeSync"; +import AccountImportPeraSyncSuccess from "../../page/import/pera-sync/success/AccountImportPeraSyncSuccess"; +import AccountSuccessPage from "../../page/success/AccountSuccessPage"; +import AccountCreationAnimation from "../../component/account-creation-animation/AccountCreationAnimation"; +import NavigateFlow from "../../../core/route/navigate/NavigateFlow"; + +function AccountImportFlow() { + return ( + + {/* via PASSPHRASE */} + + }> + } /> + + } + /> + + + + + } + /> + + + + + } + /> + + } /> + + + + + + } + /> + + + + }> + } /> + + + + + } + /> + + + + + } + /> + + + + {"to be implemented"}} + /> + + } /> + + ); +} + +export default AccountImportFlow; diff --git a/src/account/page/create/AccountCreate.tsx b/src/account/page/create/AccountCreate.tsx new file mode 100644 index 0000000..6ea9fbc --- /dev/null +++ b/src/account/page/create/AccountCreate.tsx @@ -0,0 +1,76 @@ +import "./_account-create.scss"; + +import algosdk from "algosdk"; +import {useMemo} from "react"; + +import ROUTES from "../../../core/route/routes"; +import {useAppContext} from "../../../core/app/AppContext"; +import AccountNameForm from "../../component/account-name-form/AccountNameForm"; +import {encryptSK} from "../../../core/util/nacl/naclUtils"; +import useNavigateFlow from "../../../core/route/navigate/useNavigateFlow"; +import {AccountComponentFlows} from "../../util/accountTypes"; +import {useConnectFlowContext} from "../../../connect/context/ConnectFlowContext"; +import {appDBManager} from "../../../core/app/db"; + +interface AccountCreateProps { + flow?: AccountComponentFlows; +} + +function AccountCreate({flow = "default"}: AccountCreateProps) { + const navigate = useNavigateFlow(); + const { + state: {masterkey}, + dispatch: dispatchAppState + } = useAppContext(); + const account = useMemo(() => algosdk.generateAccount(), []); + const {dispatchFormitoAction} = useConnectFlowContext(); + + return ( +
    +

    + {"Name your account"} +

    + + +
    + ); + + async function handleCreateAccountFormSubmit(accountName: string) { + const pk = await encryptSK(account.sk, masterkey!); + const newAccount = { + type: "standard", + address: account.addr, + name: accountName, + pk, + date: new Date() + } as AppDBAccount; + + await appDBManager.set("accounts", masterkey!)(account.addr, newAccount); + + dispatchAppState({ + type: "SET_ACCOUNT", + account: newAccount + }); + + if (flow === "connect") { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + createAccountViews: "animation" + } + }); + } else { + navigate(ROUTES.ACCOUNT.CREATE.PENDING.ROUTE, { + state: {creationType: "create"} + }); + } + } +} + +export default AccountCreate; diff --git a/src/account/page/create/_account-create.scss b/src/account/page/create/_account-create.scss new file mode 100644 index 0000000..8920c69 --- /dev/null +++ b/src/account/page/create/_account-create.scss @@ -0,0 +1,12 @@ +.account-create { + display: flex; + flex-direction: column; + justify-content: space-between; + + width: 424px; +} + +.account-create__title, +.account-create__address-box { + margin-bottom: 32px; +} diff --git a/src/account/page/import/passphrase/name/AccountImportPassphraseName.tsx b/src/account/page/import/passphrase/name/AccountImportPassphraseName.tsx new file mode 100644 index 0000000..e7caee1 --- /dev/null +++ b/src/account/page/import/passphrase/name/AccountImportPassphraseName.tsx @@ -0,0 +1,88 @@ +import "./_account-import-passphrase-name.scss"; + +import {Account} from "algosdk"; +import {useLocation} from "react-router-dom"; + +import {useAppContext} from "../../../../../core/app/AppContext"; +import AccountNameForm from "../../../../component/account-name-form/AccountNameForm"; +import ROUTES from "../../../../../core/route/routes"; +import {encryptSK} from "../../../../../core/util/nacl/naclUtils"; +import useNavigateFlow from "../../../../../core/route/navigate/useNavigateFlow"; +import {useConnectFlowContext} from "../../../../../connect/context/ConnectFlowContext"; +import {AccountComponentFlows} from "../../../../util/accountTypes"; +import {appDBManager} from "../../../../../core/app/db"; + +type LocationState = {account: Account}; + +export interface AccountImportPassphraseNameProps { + flow?: AccountComponentFlows; +} + +function AccountImportPassphraseName({ + flow = "default" +}: AccountImportPassphraseNameProps) { + const navigate = useNavigateFlow(); + const location = useLocation(); + const {formitoState, dispatchFormitoAction} = useConnectFlowContext(); + const {account} = (location?.state || {}) as LocationState; + const isInConnectFlow = flow === "connect"; + const importedAccount = + isInConnectFlow && formitoState ? formitoState.importedAccountInFlow : account; + const { + state: {masterkey}, + dispatch: dispatchAppState + } = useAppContext(); + + return ( +
    +

    + {"Name your account"} +

    + + +
    + ); + + async function handleAccountImportNaming(accountName: string) { + if (!importedAccount || !masterkey) return; + + const pk = await encryptSK(importedAccount.sk, masterkey!); + + const newAccount = { + type: "standard" as AccountType, + name: accountName, + address: importedAccount.addr, + pk, + date: new Date() + }; + + await appDBManager.set("accounts", masterkey)(importedAccount.addr, newAccount); + + dispatchAppState({type: "SET_ACCOUNT", account: newAccount}); + + if (!isInConnectFlow) { + navigate(ROUTES.ACCOUNT.IMPORT.PASSPHRASE.PENDING.FULL_PATH, { + state: {creationType: "import"} + }); + return; + } + + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + importAccountViews: "animation" + } + }); + } +} + +export default AccountImportPassphraseName; diff --git a/src/account/page/import/passphrase/name/_account-import-passphrase-name.scss b/src/account/page/import/passphrase/name/_account-import-passphrase-name.scss new file mode 100644 index 0000000..77d7318 --- /dev/null +++ b/src/account/page/import/passphrase/name/_account-import-passphrase-name.scss @@ -0,0 +1,7 @@ +.account-import-passphrase-name { + width: 424px; +} + +.account-import-passphrase-name__title { + margin: 0 0 32px; +} diff --git a/src/account/page/import/passphrase/prepare/AccountImportPassphrasePrepare.tsx b/src/account/page/import/passphrase/prepare/AccountImportPassphrasePrepare.tsx new file mode 100644 index 0000000..1d39771 --- /dev/null +++ b/src/account/page/import/passphrase/prepare/AccountImportPassphrasePrepare.tsx @@ -0,0 +1,66 @@ +import "./_account-import-passphrase-prepare.scss"; + +import {ReactComponent as KeyIcon} from "../../../../../core/ui/icons/key.svg"; + +import {Link} from "react-router-dom"; + +import ROUTES from "../../../../../core/route/routes"; +import Button from "../../../../../component/button/Button"; +import {AccountComponentFlows} from "../../../../util/accountTypes"; +import {useConnectFlowContext} from "../../../../../connect/context/ConnectFlowContext"; + +export interface AccountImportPassphraseProps { + flow?: AccountComponentFlows; +} + +function AccountImportPassphrase({flow = "default"}: AccountImportPassphraseProps) { + const {dispatchFormitoAction} = useConnectFlowContext(); + + return ( +
    +
    + +
    + +

    + {"Import account with"} +
    + {"Recovery Passphrase"} +

    + +

    + { + "In the following steps, you'll enter your 25-word recovery passphrase to import an Algorand account. Have your recovery phrase handy before you begin." + } +

    + + {flow === "connect" ? ( + + ) : ( + + {"Next"} + + )} +
    + ); + + function handleChangeView() { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + importAccountViews: "recovery" + } + }); + } +} + +export default AccountImportPassphrase; diff --git a/src/account/page/import/passphrase/prepare/_account-import-passphrase-prepare.scss b/src/account/page/import/passphrase/prepare/_account-import-passphrase-prepare.scss new file mode 100644 index 0000000..5d5ebb8 --- /dev/null +++ b/src/account/page/import/passphrase/prepare/_account-import-passphrase-prepare.scss @@ -0,0 +1,52 @@ +.account-import-passphrase { + display: flex; + flex-direction: column; + + width: 424px; + + text-align: center; +} + +.account-import-passphrase__description { + margin: 16px 0 116px; +} + +.account-import-passphrase__icon-wrapper { + display: flex; + align-items: center; + justify-content: center; + + width: 106px; + height: 106px; + + margin: 52px auto 32px; + + border-radius: 100%; + box-shadow: var(--shadow-xlarge); + + .key-icon { + path { + fill: var(--helper-purple-default); + } + } +} + +.account-import-passphrase__icon { + width: 56px; + height: 56px; + + path { + fill: var(--purple-10); + } +} + +.account-import-passphrase__cta { + width: 100%; + height: 48px; + + padding: 14px; + + color: var(--primary-button-text); + background: var(--primary-button-bg); + border-radius: 12px; +} diff --git a/src/account/page/import/passphrase/recovery/AccountImportPassphraseRecovery.tsx b/src/account/page/import/passphrase/recovery/AccountImportPassphraseRecovery.tsx new file mode 100644 index 0000000..906c65a --- /dev/null +++ b/src/account/page/import/passphrase/recovery/AccountImportPassphraseRecovery.tsx @@ -0,0 +1,91 @@ +import "./_account-import-passphrase-recovery.scss"; + +import algosdk from "algosdk"; +import {useToaster} from "@hipo/react-ui-toolkit"; + +import ROUTES from "../../../../../core/route/routes"; +import PeraToast from "../../../../../component/pera-toast/PeraToast"; +import AccountMnemonicForm from "../../../../component/account-mnemonic-form/AccountMnemonicForm"; +import useNavigateFlow from "../../../../../core/route/navigate/useNavigateFlow"; +import {useConnectFlowContext} from "../../../../../connect/context/ConnectFlowContext"; +import {AccountComponentFlows} from "../../../../util/accountTypes"; + +export interface AccountImportPassphraseRecoveryProps { + flow?: AccountComponentFlows; +} + +function AccountImportPassphraseRecovery({ + flow = "default" +}: AccountImportPassphraseRecoveryProps) { + const navigate = useNavigateFlow(); + const toaster = useToaster(); + const {dispatchFormitoAction} = useConnectFlowContext(); + const isInConnectFlow = flow === "connect"; + + return ( +
    +

    + {"Recovery Passphrase"} +

    + +

    + {"Enter your recovery passphrase in the correct order."} +

    + +

    + {"You can paste your passphrase as 25 words separated with commas or spaces."} +

    + + +
    + ); + + function handleImportAccountMnemonic(mnemonicKeys: string[]) { + const mnemonic = mnemonicKeys.join(" "); + + try { + const account = algosdk.mnemonicToSecretKey(mnemonic); + + if (!isInConnectFlow) { + navigate(ROUTES.ACCOUNT.IMPORT.PASSPHRASE.NAME.FULL_PATH, { + state: {account} + }); + + return; + } + + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + importedAccountInFlow: account, + importAccountViews: "name" + } + }); + } catch (error: any) { + console.error(error); + + toaster.display({ + render() { + return ( + + ); + } + }); + } + } +} + +export default AccountImportPassphraseRecovery; diff --git a/src/account/page/import/passphrase/recovery/_account-import-passphrase-recovery.scss b/src/account/page/import/passphrase/recovery/_account-import-passphrase-recovery.scss new file mode 100644 index 0000000..5c00c5a --- /dev/null +++ b/src/account/page/import/passphrase/recovery/_account-import-passphrase-recovery.scss @@ -0,0 +1,4 @@ +.account-import-passphrase-recovery__title, +.account-import-passphrase-recovery__description { + margin-bottom: 24px; +} diff --git a/src/account/page/import/passphrase/recovery/util/accountImportPassphraseRecoveryUtils.ts b/src/account/page/import/passphrase/recovery/util/accountImportPassphraseRecoveryUtils.ts new file mode 100644 index 0000000..328f96d --- /dev/null +++ b/src/account/page/import/passphrase/recovery/util/accountImportPassphraseRecoveryUtils.ts @@ -0,0 +1,9 @@ +import {MNEMONIC_LENGTH} from "../../../../../util/accountConstants"; + +function validatePassphraseForm(mnemonicKeys: string[]) { + return ( + mnemonicKeys.filter((key) => Boolean(key) && key.trim()).length === MNEMONIC_LENGTH + ); +} + +export {validatePassphraseForm}; diff --git a/src/account/page/import/pera-sync/prepare/AccountImportPeraSyncPrepare.tsx b/src/account/page/import/pera-sync/prepare/AccountImportPeraSyncPrepare.tsx new file mode 100644 index 0000000..88172ef --- /dev/null +++ b/src/account/page/import/pera-sync/prepare/AccountImportPeraSyncPrepare.tsx @@ -0,0 +1,144 @@ +import "./_account-import-pera-sync-prepare.scss"; + +import {ReactComponent as PeraSyncIcon} from "../../../../../core/ui/icons/pera-sync.svg"; + +import {useEffect} from "react"; + +import ROUTES from "../../../../../core/route/routes"; +import useAsyncProcess from "../../../../../core/network/async-process/useAsyncProcess"; +import {useAppContext} from "../../../../../core/app/AppContext"; +import {AccountBackup} from "../../../../accountModels"; +import {peraApi} from "../../../../../core/util/pera/api/peraApi"; +import {useSimpleToaster} from "../../../../../component/simple-toast/util/simpleToastHooks"; +import {useModalDispatchContext} from "../../../../../component/modal/context/ModalContext"; +import PasswordAccessPage, { + PASSWORD_ACCESS_MODAL_ID +} from "../../../../../password/page/access/PasswordAccessPage"; +import useNavigateFlow from "../../../../../core/route/navigate/useNavigateFlow"; +import {AccountComponentFlows} from "../../../../util/accountTypes"; +import {useConnectFlowContext} from "../../../../../connect/context/ConnectFlowContext"; +import Button from "../../../../../component/button/Button"; +import {STORED_KEYS} from "../../../../../core/util/storage/web/webStorage"; +import {encryptedWebStorageUtils} from "../../../../../core/util/storage/web/webStorageUtils"; + +interface AccountImportPeraSyncProps { + flow?: AccountComponentFlows; +} + +function AccountImportPeraSync({flow = "default"}: AccountImportPeraSyncProps) { + const navigate = useNavigateFlow(); + const { + state: {masterkey, preferredNetwork} + } = useAppContext(); + const dispatchModalStateAction = useModalDispatchContext(); + const {dispatchFormitoAction} = useConnectFlowContext(); + const { + runAsyncProcess, + state: {data, error, isRequestPending} + } = useAsyncProcess(); + const simpleToaster = useSimpleToaster(); + + useEffect(() => { + if (data) { + const {id: backupId, modification_key: modificationKey} = data; + + if (flow === "connect") { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + importAccountFromMobileViews: "qr", + accountBackup: { + backupId, + modificationKey + } + } + }); + } else { + navigate(ROUTES.ACCOUNT.IMPORT.PERA_SYNC.QR.ROUTE, { + state: {backupId, modificationKey} + }); + } + } + + if (error) { + simpleToaster.display({ + type: "error", + message: "There was an error importing your accounts, please try again later." + }); + } + }, [data, error, navigate, simpleToaster, dispatchFormitoAction, flow]); + + return ( +
    + + +

    {"Import from Pera Mobile"}

    + +

    + { + "If you are already a Pera Mobile user you can import all your accounts to Pera Web at once." + } +

    + + +
    + ); + + function handleOpenPasswordModal() { + dispatchModalStateAction({ + type: "OPEN_MODAL", + payload: { + item: { + id: PASSWORD_ACCESS_MODAL_ID, + modalContentLabel: "Start account import process from pera mobile", + children: ( + + ) + } + } + }); + } + + async function handleRequestAccountBackup() { + try { + closeModal(); + + const deviceInfo = (await encryptedWebStorageUtils(masterkey!).get( + STORED_KEYS.DEVICE_INFO + )) as DeviceInfo; + + const {deviceId} = deviceInfo[preferredNetwork]; + + runAsyncProcess(peraApi.createAccountBackup(deviceId)); + } catch (e) { + simpleToaster.display({ + type: "error", + message: "Network error happened, please try again later." + }); + } + } + + function closeModal() { + dispatchModalStateAction({ + type: "CLOSE_MODAL", + payload: { + id: PASSWORD_ACCESS_MODAL_ID + } + }); + } +} + +export default AccountImportPeraSync; diff --git a/src/account/page/import/pera-sync/prepare/_account-import-pera-sync-prepare.scss b/src/account/page/import/pera-sync/prepare/_account-import-pera-sync-prepare.scss new file mode 100644 index 0000000..5335584 --- /dev/null +++ b/src/account/page/import/pera-sync/prepare/_account-import-pera-sync-prepare.scss @@ -0,0 +1,39 @@ +.account-import-pera { + display: flex; + flex-direction: column; + + width: 424px; + + text-align: center; +} + +.account-import-pera__title { + margin: 32px 0 16px; + + color: #2a2a31; + + font-size: 24px; + line-height: 29px; + letter-spacing: -0.47px; +} + +.account-import-pera__description { + color: #7e7e8c; + + font-size: 14px; + font-weight: 400; + line-height: 24px; +} + +.account-import-pera__icon { + width: auto; + height: 80px; + + margin-top: 64px; +} + +.account-import-pera__cta { + width: 100%; + + margin-top: 152px; +} diff --git a/src/account/page/import/pera-sync/success/AccountImportPeraSyncSuccess.tsx b/src/account/page/import/pera-sync/success/AccountImportPeraSyncSuccess.tsx new file mode 100644 index 0000000..c6bb603 --- /dev/null +++ b/src/account/page/import/pera-sync/success/AccountImportPeraSyncSuccess.tsx @@ -0,0 +1,171 @@ +import "./_account-import-pera-sync-success.scss"; + +import {ReactComponent as CheckmarkIcon} from "../../../../../core/ui/icons/checkmark.svg"; + +import {useEffect} from "react"; +import {Navigate, useNavigate} from "react-router-dom"; +import {List, ListItem, Spinner} from "@hipo/react-ui-toolkit"; + +import Button from "../../../../../component/button/Button"; +import ROUTES from "../../../../../core/route/routes"; +import AccountListItemContent from "../../../../component/account-list/account-list-item-content/AccountListItemContent"; +import {useAppContext} from "../../../../../core/app/AppContext"; +import useLocationWithState from "../../../../../core/util/hook/useLocationWithState"; +import useAsyncProcess from "../../../../../core/network/async-process/useAsyncProcess"; +import {peraApi} from "../../../../../core/util/pera/api/peraApi"; +import {PortfolioOverview} from "../../../../../overview/util/hook/usePortfolioOverview"; +import {trimAccountAddress, trimAccountName} from "../../../../util/accountUtils"; +import {AccountComponentFlows} from "../../../../util/accountTypes"; +import {useConnectFlowContext} from "../../../../../connect/context/ConnectFlowContext"; + +interface AccountImportPeraSuccessProps { + flow?: AccountComponentFlows; +} + +type LocationState = { + importedAccounts: PortfolioOverview["accounts"]; +}; + +function AccountImportPeraSuccess({flow = "default"}: AccountImportPeraSuccessProps) { + const navigate = useNavigate(); + const { + state: {accounts} + } = useAppContext(); + const {formitoState, dispatchFormitoAction} = useConnectFlowContext(); + const {importedAccounts: importedAccountFromLocationState} = + useLocationWithState(); + const isInConnectFlow = flow === "connect"; + const importedAccounts = + isInConnectFlow && formitoState + ? formitoState.importedAccountsFromMobile + : importedAccountFromLocationState; + const { + state: {data: importedAccountsOverview, isRequestPending, isRequestFetched}, + runAsyncProcess + } = useAsyncProcess(); + + useEffect(() => { + if (!importedAccounts) { + if (isInConnectFlow) { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + connectFlowView: "add-account" + } + }); + } + + return; + } + + runAsyncProcess( + peraApi.getMultipleAccountOverview({ + account_addresses: importedAccounts.map( + (importedAccount) => importedAccount.address + ) + }) + ); + }, [importedAccounts, runAsyncProcess, dispatchFormitoAction, isInConnectFlow]); + + if (!importedAccounts && !isInConnectFlow) { + return ; + } + + return ( +
    +
    + +
    + +
    +

    {"Accounts Imported!"}

    + +

    + {importedAccounts?.length} + + {` account${ + importedAccounts && importedAccounts.length > 1 ? "s were" : " was" + } imported to Pera Web`} +

    +
    + + {isRequestPending && ( +
    + +
    + )} + + {isRequestFetched && ( +
    + + {({address, total_algo_value}) => ( + + + + )} + +
    + )} + + +
    + ); + + function handleNavigation() { + if (!isInConnectFlow) { + navigate(ROUTES.OVERVIEW.ROUTE); + + return; + } + + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + connectFlowView: "select-account" + } + }); + } + + function getAccountOverviewList() { + const overview: Record = {}; + + importedAccountsOverview?.accounts.forEach((account) => { + overview[account.address] = account; + }); + + importedAccounts?.forEach((importedAccount) => { + // newly created account on mobile + // zero balanced not existed on network + if (importedAccount.address in overview === false) { + overview[importedAccount.address] = { + ...importedAccount, + standard_asset_count: 1, + total_algo_value: "0" + }; + } + }); + + return Object.values(overview); + } + + function getAccountName(address: string): string { + const accountName = accounts[address]?.name; + + // in case of accountName is an empty string + return accountName ? trimAccountName(accountName) : trimAccountAddress(address); + } +} + +export default AccountImportPeraSuccess; diff --git a/src/account/page/import/pera-sync/success/_account-import-pera-sync-success.scss b/src/account/page/import/pera-sync/success/_account-import-pera-sync-success.scss new file mode 100644 index 0000000..9d9a1d3 --- /dev/null +++ b/src/account/page/import/pera-sync/success/_account-import-pera-sync-success.scss @@ -0,0 +1,95 @@ +@import "../../../../../core/ui/typography/typography-mixins"; + +.account-import-pera-success { + width: 424px; +} + +.account-import-pera-success, +.account-import-pera-success__heading { + display: flex; + flex-direction: column; + align-items: center; +} + +.account-import-pera-success__heading { + gap: 16px; + + margin: 32px 0; +} + +.account-import-pera-success__content { + width: 100%; + + margin-bottom: 48px; +} + +.account-import-pera-success__spinner { + margin: auto; +} + +.account-import-pera-success__info-box { + margin-top: 24px; + + .info-box-text { + @include typography--medium-body(); + + color: rgba(183 67 20 / 100%); + } +} + +.account-import-pera-success__icon { + width: 106px; + height: 106px; + + margin-top: 14px; + + background: white; + border-radius: 100%; + box-shadow: var(--shadow-large); + + .check-mark-icon path { + fill: var(--purple-500); + } +} + +.account-import-pera-success__account-list { + display: grid; + + gap: 32px; + + width: 100%; + max-height: 240px; + + overflow-y: auto; + + padding: 20px 28px; + + background: var(--gray-100); + border-radius: 12px; +} + +.account-import-pera-success__account-list-item { + position: relative; + + &:not(:last-child):after { + position: absolute; + + bottom: -16px; + + width: 100%; + + border-bottom: solid 1px var(--gray-200); + + content: ""; + } + + .account-default-icon, + .account-ledger-icon { + width: 32px; + height: 32px; + } +} + +.account-import-pera-success__cta { + width: 100%; +} diff --git a/src/account/page/landing/AccountLandingPage.tsx b/src/account/page/landing/AccountLandingPage.tsx new file mode 100644 index 0000000..6cb8d39 --- /dev/null +++ b/src/account/page/landing/AccountLandingPage.tsx @@ -0,0 +1,37 @@ +import {ReactComponent as LedgerIcon} from "../../../core/ui/icons/ledger.svg"; + +import "./_account-landing-page.scss"; + +import AccountOnboardingOptionList from "../../component/onboarding-option-list/AccountOnboardingOptionList"; +import {withGoBackLink} from "../../../core/route/context/NavigationContext"; +import ROUTES from "../../../core/route/routes"; + +function AccountLandingPage() { + return ( +
    +

    {"Add Account"}

    + + + +
    + + +

    + {"Pair Nano Ledger"} +

    + +
    + {"COMING SOON"} +
    +
    +
    + ); +} + +export default withGoBackLink(AccountLandingPage, ROUTES.OVERVIEW.ROUTE); diff --git a/src/account/page/landing/_account-landing-page.scss b/src/account/page/landing/_account-landing-page.scss new file mode 100644 index 0000000..f53c248 --- /dev/null +++ b/src/account/page/landing/_account-landing-page.scss @@ -0,0 +1,38 @@ +.account-landing-page__option-list { + margin: 80px 0 32px; +} + +.account-landing-page__nano-ledger { + display: flex; + align-items: center; + justify-content: center; + + margin-left: auto; + padding: 16px; + + background-color: rgba(var(--gray-200-rgb), 0.5); + border-radius: 16px; + box-shadow: var(--shadow-disabled); + + cursor: not-allowed; + + .ledger-icon { + margin-right: 12px; + + path { + fill: var(--text-gray-light); + } + + circle { + fill: var(--text-gray-light); + } + } +} + +.account-landing-page__nano-ledger__badge { + margin-left: 16px; + padding: 6px 12px; + + background-color: var(--white); + border-radius: 16px; +} diff --git a/src/account/page/qr-code-sync/AccountQRCodeSync.tsx b/src/account/page/qr-code-sync/AccountQRCodeSync.tsx new file mode 100644 index 0000000..69ffe0f --- /dev/null +++ b/src/account/page/qr-code-sync/AccountQRCodeSync.tsx @@ -0,0 +1,235 @@ +import "./_account-qr-code-sync.scss"; + +import nacl from "tweetnacl"; +import {List, ListItem} from "@hipo/react-ui-toolkit"; +import {useMemo} from "react"; +import {Navigate, useLocation} from "react-router-dom"; + +import PeraQRCode from "../../../component/pera-qr-code/PeraQRCode"; +import ROUTES from "../../../core/route/routes"; +import useInterval from "../../../core/util/hook/useInterval"; +import {peraApi} from "../../../core/util/pera/api/peraApi"; +import { + stringBytesToUint8Array, + uint8ArrayToString +} from "../../../core/util/blob/blobUtils"; +import {useAppContext} from "../../../core/app/AppContext"; +import { + PERA_SYNC_POLLING_INTERVAL, + PERA_SYNC_POLLING_LIMIT, + SYNC_MOBILE_TO_WEB_CONSTANTS, + SYNC_WEB_TO_MOBILE_CONSTANTS +} from "./accountQRCodeSyncConstants"; +import {decryptAccountBackup, encryptSK} from "../../../core/util/nacl/naclUtils"; +import {MobileSyncAccount} from "../../accountModels"; +import {useSimpleToaster} from "../../../component/simple-toast/util/simpleToastHooks"; +import {deriveAccountFromPrivateKey} from "../../util/accountUtils"; +import useNavigateFlow from "../../../core/route/navigate/useNavigateFlow"; +import {AccountComponentFlows} from "../../util/accountTypes"; +import {useConnectFlowContext} from "../../../connect/context/ConnectFlowContext"; +import {PortfolioOverview} from "../../../overview/util/hook/usePortfolioOverview"; +import {appDBManager} from "../../../core/app/db"; + +interface AccountQRCodeSyncProps { + sync: "web-to-mobile" | "mobile-to-web"; + flow?: AccountComponentFlows; +} + +type LocationState = { + state: {modificationKey?: string; backupId?: string}; +}; + +// This component handles both mobile-to-web / web-to-mobile qr-code processes +function AccountQRCodeSync({sync, flow = "default"}: AccountQRCodeSyncProps) { + // TODO: get searchParams to decide if export or import qr + const navigate = useNavigateFlow(); + const location = useLocation() as LocationState; + const { + state: {accounts: webAccounts, masterkey}, + dispatch: dispatchAppState + } = useAppContext(); + const simpleToaster = useSimpleToaster(); + const encryptionKey = useMemo(() => nacl.randomBytes(nacl.secretbox.keyLength), []); + const {formitoState, dispatchFormitoAction} = useConnectFlowContext(); + + const isInConnectFlow = flow === "connect"; + const backupId = + isInConnectFlow && formitoState + ? formitoState.accountBackup?.backupId + : location?.state?.backupId; + const modificationKey = isInConnectFlow + ? formitoState.accountBackup?.modificationKey + : location.state.modificationKey; + const accountBackupState = {modificationKey, backupId}; + + const QR_CODE_SYNC_CONTANTS = + sync === "web-to-mobile" + ? SYNC_WEB_TO_MOBILE_CONSTANTS + : SYNC_MOBILE_TO_WEB_CONSTANTS; + + // Polling; + useInterval(handleAccountBackupPolling, PERA_SYNC_POLLING_INTERVAL, { + shouldRunCallbackAtStart: true, + refreshLimit: PERA_SYNC_POLLING_LIMIT + }); + + if (!isInConnectFlow && (!backupId || !modificationKey)) { + return ; + } + + return ( +
    +

    {"Import from Pera Mobile"}

    + +
    + +
    + + + {(instruction, _, instructionIndex) => ( + + + {String(instructionIndex! + 1)} + + + + {instruction} + + + )} + +
    + ); + + async function handleAccountBackupPolling() { + let cipher: string | null = null; + + // encrypted_content: stringified Uint8Array[nonce] + Uint8Array[cipher] + // nonce: first 24 bytes of the encrypted content + try { + const {encrypted_content} = (await peraApi.getAccountBackup(backupId!)) || {}; + + cipher = encrypted_content; + } catch (error) { + console.error("API Error", error); + return; + } + + if (cipher) { + // nacl returns null in case of decryption error + const decryptedContent = decryptAccountBackup(cipher, encryptionKey); + + if (!decryptedContent) { + console.error("Encryption Error"); + return; + } + + let mobileAccounts: MobileSyncAccount[] | null = null; + + try { + const {accounts} = JSON.parse(uint8ArrayToString(decryptedContent)); + + mobileAccounts = accounts as MobileSyncAccount[]; + } catch (error) { + console.error("JSON Parse Error"); + return; + } + + // this method handles individual account errors inside + const importedAccounts = await handleImportAccounts( + mobileAccounts as MobileSyncAccount[] + ); + + if (importedAccounts.length === 0) { + simpleToaster.display({ + message: "There is no new account to be synced.", + type: "info" + }); + + if (flow === "connect") { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + connectFlowView: "add-account" + } + }); + } else { + navigate(ROUTES.ACCOUNT.ROUTE); + } + + return; + } + + if (flow === "connect") { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + importAccountFromMobileViews: "success", + importedAccountsFromMobile: + importedAccounts as unknown as PortfolioOverview["accounts"] + } + }); + } else { + navigate(ROUTES.ACCOUNT.IMPORT.PERA_SYNC.SUCCESS.FULL_PATH, { + state: { + importedAccounts, + allAccountsImported: mobileAccounts.length === importedAccounts.length + } + }); + } + } + } + + async function handleImportAccounts( + mobileAccounts: MobileSyncAccount[] + ): Promise { + const webAccountAddresses = Object.keys(webAccounts); + const importedAccounts = [] as AppDBAccount[]; + + for (const account of mobileAccounts) { + const privateKey = stringBytesToUint8Array(account.private_key); + const {addr: address, sk} = deriveAccountFromPrivateKey(privateKey); + let dbAccount: AppDBAccount | null = null; + + try { + const pk = await encryptSK(sk, masterkey!); + + dbAccount = { + type: "standard", + name: account.name, + pk, + address, + date: new Date() + }; + } catch (error) { + console.error("Key Derivation Error"); + } + + if (dbAccount && !webAccountAddresses.includes(address)) { + try { + await appDBManager.set("accounts", masterkey!)(address, dbAccount); + + dispatchAppState({type: "SET_ACCOUNT", account: dbAccount}); + + importedAccounts.push(dbAccount); + } catch (error) { + console.error("DB Error"); + } + } + } + + return importedAccounts; + } +} + +export default AccountQRCodeSync; diff --git a/src/account/page/qr-code-sync/_account-qr-code-sync.scss b/src/account/page/qr-code-sync/_account-qr-code-sync.scss new file mode 100644 index 0000000..b6a6571 --- /dev/null +++ b/src/account/page/qr-code-sync/_account-qr-code-sync.scss @@ -0,0 +1,54 @@ +.account-import-pera-qr { + width: 424px; +} + +.account-import-pera__qr-code-wrapper { + margin: 60px 0 26px; + + text-align: center; +} + +.account-import-pera__qr-code-success-icon-wrapper { + width: 80px; + height: 80px; + + background: var(--purple-500); + border-radius: 100%; +} + +.account-import-pera__qr-code-success-icon { + path { + stroke: white; + stroke-width: 1px; + stroke-linecap: round; + } +} + +.account-import-pera__instruction-list { + padding: 0 8px; + + text-align: left; +} + +.account-import-pera__instruction-list-item { + color: var(--gray-700); + + &:not(:last-child) { + margin-bottom: 16px; + } +} + +.account-import-pera__instruction-list-item-index { + display: inline-grid; + place-content: center; + + width: 32px; + height: 32px; + + margin-right: 16px; + + color: var(--purple-500); + background: rgba(107 70 254 / 10%); + + border-radius: 100%; +} diff --git a/src/account/page/qr-code-sync/accountQRCodeSyncConstants.ts b/src/account/page/qr-code-sync/accountQRCodeSyncConstants.ts new file mode 100644 index 0000000..ffcb0bf --- /dev/null +++ b/src/account/page/qr-code-sync/accountQRCodeSyncConstants.ts @@ -0,0 +1,33 @@ +import {MINUTE_IN_MS, SECOND_IN_MS} from "../../../core/util/time/timeConstants"; + +const SYNC_MOBILE_TO_WEB_CONSTANTS = { + TITLE: "Import from Pera Mobile", + INSTRUCTIONS: [ + "Scan this QR code on Pera Mobile", + "Follow the instructions on your app", + "Your accounts will be imported to Pera Web" + ] +}; + +const SYNC_WEB_TO_MOBILE_CONSTANTS = { + TITLE: "Transfer to Pera Mobile", + INSTRUCTIONS: [ + "Scan this QR code on Pera Mobile", + "Follow the instructions on your app" + ] +}; + +// eslint-disable-next-line no-magic-numbers +const PERA_SYNC_POLLING_INTERVAL = SECOND_IN_MS * 2; + +// Polling will stop in 2 minutes via useCheckForInactivity hook in case of missing clicks +// This polling limit is just a double check for unnecessary requests +// eslint-disable-next-line no-magic-numbers +const PERA_SYNC_POLLING_LIMIT = 5 * (MINUTE_IN_MS / PERA_SYNC_POLLING_INTERVAL); + +export { + SYNC_WEB_TO_MOBILE_CONSTANTS, + SYNC_MOBILE_TO_WEB_CONSTANTS, + PERA_SYNC_POLLING_INTERVAL, + PERA_SYNC_POLLING_LIMIT +}; diff --git a/src/account/page/success/AccountSuccessPage.tsx b/src/account/page/success/AccountSuccessPage.tsx new file mode 100644 index 0000000..df5ab36 --- /dev/null +++ b/src/account/page/success/AccountSuccessPage.tsx @@ -0,0 +1,96 @@ +import checkmarkAnimation from "../../../core/ui/animation/Checkmark.json"; + +import "./_account-success-page.scss"; + +import {useEffect} from "react"; +import Lottie from "lottie-react"; + +import ROUTES from "../../../core/route/routes"; +import AccountSuccessCard from "./card/AccountSuccessCard"; +import ExploreItemList from "../../../explore/item/list/ExploreItemList"; +import {getExploreItems} from "../../../explore/util/exploreUtils"; +import {useAppContext} from "../../../core/app/AppContext"; +import {getLastAccountAddress} from "../../util/accountUtils"; +import LinkButton from "../../../component/button/LinkButton"; +import webStorage, {STORED_KEYS} from "../../../core/util/storage/web/webStorage"; +import Button from "../../../component/button/Button"; +import {useConnectFlowContext} from "../../../connect/context/ConnectFlowContext"; +import {AccountComponentFlows} from "../../util/accountTypes"; +export interface AccountSuccessPageProps { + type: "CREATE" | "IMPORT"; + flow?: AccountComponentFlows; +} + +function AccountSuccessPage({type, flow = "default"}: AccountSuccessPageProps) { + const { + state: {accounts} + } = useAppContext(); + const {formitoState, dispatchFormitoAction} = useConnectFlowContext(); + const createdAccountName = accounts[getLastAccountAddress(accounts)].name; + + useEffect(() => { + if (type === "CREATE") { + webStorage.local.setItem(STORED_KEYS.CREATED_NEW_ACCOUNT, createdAccountName); + } + }); + + return ( +
    +
    + + +
    +

    + {`Account ${type === "CREATE" ? "created" : "imported"}`} +

    + + {flow === "connect" && formitoState ? ( + + ) : ( + + {"Go to Accounts"} + + )} +
    +
    + + + + {type === "IMPORT" && ( +
    +

    + {"Explore more on Algorand"} +

    + + +
    + )} +
    + ); + + function handleChangeView() { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: {connectFlowView: "select-account"} + }); + } +} + +export default AccountSuccessPage; diff --git a/src/account/page/success/_account-success-page.scss b/src/account/page/success/_account-success-page.scss new file mode 100644 index 0000000..5dd869f --- /dev/null +++ b/src/account/page/success/_account-success-page.scss @@ -0,0 +1,27 @@ +.account-success-page__checkmark-animation { + position: relative; + left: -28px; + + width: 120px; + height: 120px; +} + +.account-success-page__header { + display: flex; + align-items: center; + justify-content: space-between; + + margin-bottom: 48px; +} + +.account-success-page__header-cta { + padding: 14px 48px; +} + +.account-success-page__explore-section { + display: flex; + flex-direction: column; + gap: 28px; + + margin-top: 80px; +} diff --git a/src/account/page/success/card/AccountSuccessCard.tsx b/src/account/page/success/card/AccountSuccessCard.tsx new file mode 100644 index 0000000..021afc2 --- /dev/null +++ b/src/account/page/success/card/AccountSuccessCard.tsx @@ -0,0 +1,195 @@ +import {ReactComponent as QRCodeIcon} from "../../../../core/ui/icons/qr-code.svg"; +import {ReactComponent as PlusIcon} from "../../../../core/ui/icons/plus.svg"; +import {ReactComponent as ExportIcon} from "../../../../core/ui/icons/export.svg"; + +import "./_account-success-card.scss"; + +import {useAppContext} from "../../../../core/app/AppContext"; +import {useModalDispatchContext} from "../../../../component/modal/context/ModalContext"; +import { + getLastAccountAddress, + trimAccountAddress, + trimAccountName +} from "../../../util/accountUtils"; +import ClipboardButton from "../../../../component/clipboard/button/ClipboardButton"; +import Button from "../../../../component/button/Button"; +import AccountShowQRModal, { + ACCOUNT_SHOW_QR_MODAL_ID +} from "../../../../overview/page/show-qr/AccountShowQR"; +import {usePortfolioContext} from "../../../../overview/context/PortfolioOverviewContext"; +import LinkButton from "../../../../component/button/LinkButton"; +import {defaultPriceFormatter} from "../../../../core/util/number/numberUtils"; +import {ALGO_UNIT} from "../../../../core/ui/typography/typographyConstants"; +import {getPeraExplorerLink} from "../../../../core/util/pera/explorer/getPeraExplorerLink"; +import MoonPayModal, { + MOON_PAY_MODAL_ID +} from "../../../../core/integrations/moon-pay/modal/MoonPayModal"; +import {AccountSuccessPageProps} from "../AccountSuccessPage"; + +interface AccountSuccessCardProps { + type: AccountSuccessPageProps["type"]; +} + +function AccountSuccessCard({type}: AccountSuccessCardProps) { + const { + state: {accounts, preferredNetwork} + } = useAppContext(); + const dispatchModalStateAction = useModalDispatchContext(); + const {algoFormatter, usdFormatter} = defaultPriceFormatter(); + const address = getLastAccountAddress(accounts); + const portfolioOverview = usePortfolioContext(); + const accountPortfolio = portfolioOverview?.accounts.find( + (account) => account.address === address + ); + + return ( +
    +
    +
    +

    {"Account value"}

    + +

    {`${ALGO_UNIT}${algoFormatter( + Number(accountPortfolio?.total_algo_value || "0.00") + )}`}

    + +

    + {accountPortfolio?.total_usd_value + ? usdFormatter(parseFloat(accountPortfolio.total_usd_value), { + minimumFractionDigits: 2 + }) + : "-"} +

    + + +
    + +
    +

    {"Account address"}

    + +

    + {trimAccountAddress(address)} +

    + +

    + {trimAccountName(accounts[address].name)} +

    + +
    + + {"Copy"} + + + +
    +
    +
    + + {type === "IMPORT" && ( +
    +

    + {"See your account in more detail"} +

    + +

    + {"on Pera Explorer"} +

    + + + {"View on Pera Explorer"} + + + +
    + )} +
    + ); + + function handleDisplayQRCodeModal() { + dispatchModalStateAction({ + type: "OPEN_MODAL", + payload: { + item: { + id: ACCOUNT_SHOW_QR_MODAL_ID, + modalContentLabel: "Rename account", + children: ( + + ) + } + } + }); + } + + function handleAddFundsClick() { + dispatchModalStateAction({ + type: "OPEN_MODAL", + payload: { + item: { + id: MOON_PAY_MODAL_ID, + modalContentLabel: "Add funds via MoonPay", + customClassName: "moon-pay-modal-container", + children: + } + } + }); + } + + function handleCloseQRCodeModal() { + dispatchModalStateAction({ + type: "CLOSE_MODAL", + payload: { + id: ACCOUNT_SHOW_QR_MODAL_ID + } + }); + } + + function handleCloseMoonPayModal() { + dispatchModalStateAction({ + type: "CLOSE_MODAL", + payload: { + id: MOON_PAY_MODAL_ID + } + }); + } +} + +export default AccountSuccessCard; diff --git a/src/account/page/success/card/_account-success-card.scss b/src/account/page/success/card/_account-success-card.scss new file mode 100644 index 0000000..31037fc --- /dev/null +++ b/src/account/page/success/card/_account-success-card.scss @@ -0,0 +1,79 @@ +.account-success-card-container { + display: flex; + gap: 16px; +} + +.account-success-card__summary { + display: grid; + grid-template-columns: 302px 1fr; + + width: 100%; + + background: var(--card-default); + border-radius: 12px; + box-shadow: var(--shadow-small); +} + +.account-success-card__summary-value { + padding: 40px; + + border-right: 1px solid var(--gray-100); +} + +.account-success-card__summary-address { + padding: 40px; +} + +.account-success-card__summary__main-info { + margin: 16px 0 8px; +} + +.account-success-card__summary-value__add-funds-cta { + gap: 8px; + + width: 166px; + height: 42px; + + margin-top: 32px; + margin-right: 96px; + + .plus-icon path { + fill: var(--primary-button-text); + } +} + +.account-success-card__summary-address__button-group { + display: flex; + gap: 12px; + + margin-top: 32px; +} + +.account-success-card__summary-address__copy-button { + width: 90px; + + .clipboard-button__content { + .copy-icon path { + fill: var(--light-button-text); + } + } +} + +.account-success-card__summary-address__qr-button { + gap: 8px; +} + +.account-success-card__pera-explorer { + padding: 40px; + + background-color: var(--gray-200); + border-radius: 12px; +} + +.account-success-card__pera-explorer-link { + gap: 8px; +} + +.account-success-card__pera-explorer-text { + margin: 16px 0 58px; +} diff --git a/src/account/page/transfer-mobile/flow/TransferMobileFlow.tsx b/src/account/page/transfer-mobile/flow/TransferMobileFlow.tsx new file mode 100644 index 0000000..9700ed0 --- /dev/null +++ b/src/account/page/transfer-mobile/flow/TransferMobileFlow.tsx @@ -0,0 +1,29 @@ +import {Routes, Route} from "react-router-dom"; + +import ROUTES from "../../../../core/route/routes"; +import CardLayout from "../../../../layouts/card-layout/CardLayout"; +import AccountQRCodeSync from "../../qr-code-sync/AccountQRCodeSync"; +import TransferMobile from "../page/prepare/TransferMobilePrepare"; +import TransferMobileSelectAccounts from "../page/select-accounts/TransferMobileSelectAccounts"; + +function TransferMobileFlow() { + return ( + + }> + } /> + + } + /> + + } + /> + + + ); +} + +export default TransferMobileFlow; diff --git a/src/account/page/transfer-mobile/page/prepare/TransferMobilePrepare.tsx b/src/account/page/transfer-mobile/page/prepare/TransferMobilePrepare.tsx new file mode 100644 index 0000000..8f27d9d --- /dev/null +++ b/src/account/page/transfer-mobile/page/prepare/TransferMobilePrepare.tsx @@ -0,0 +1,53 @@ +import "./_transfer-mobile-prepare.scss"; + +import {ReactComponent as PeraTransferIcon} from "../../../../../core/ui/icons/pera-transfer.svg"; + +import {useNavigate} from "react-router-dom"; + +import GoBackButton from "../../../../../component/go-back-button/GoBackButton"; +import InfoBox from "../../../../../component/info-box/InfoBox"; +import ROUTES from "../../../../../core/route/routes"; +import Button from "../../../../../component/button/Button"; + +function TransferMobilePrepare() { + const navigate = useNavigate(); + + return ( +
    + + + + +

    + {"Transfer your accounts to"} +
    + {"Pera Mobile"} +

    + +

    + {"You can transfer all your accounts at once to your Pera Wallet Mobile."} +

    + + + + +
    + ); + + function handleStartTransferMobile() { + navigate(ROUTES.TRANSFER.SELECT_ACCOUNTS.ROUTE); + } +} + +export default TransferMobilePrepare; diff --git a/src/account/page/transfer-mobile/page/prepare/_transfer-mobile-prepare.scss b/src/account/page/transfer-mobile/page/prepare/_transfer-mobile-prepare.scss new file mode 100644 index 0000000..2be2c79 --- /dev/null +++ b/src/account/page/transfer-mobile/page/prepare/_transfer-mobile-prepare.scss @@ -0,0 +1,29 @@ +.transfer-mobile { + display: flex; + flex-direction: column; + + text-align: center; +} + +.transfer-mobile__info-box { + margin: 32px 0 48px; + + text-align: left; + + .info-box-icon { + background-color: var(--helper-red-lighter); + } +} + +.transfer-mobile__title { + margin: 32px 0 16px; +} + +.transfer-mobile__icon { + width: auto; + height: 80px; +} + +.transfer-mobile__cta { + width: 100%; +} diff --git a/src/account/page/transfer-mobile/page/select-accounts/TransferMobileSelectAccounts.tsx b/src/account/page/transfer-mobile/page/select-accounts/TransferMobileSelectAccounts.tsx new file mode 100644 index 0000000..131e6b6 --- /dev/null +++ b/src/account/page/transfer-mobile/page/select-accounts/TransferMobileSelectAccounts.tsx @@ -0,0 +1,66 @@ +import "./_transfer-mobile-select-accounts.scss"; + +import {SyntheticEvent} from "react"; + +import GoBackButton from "../../../../../component/go-back-button/GoBackButton"; +import {useAppContext} from "../../../../../core/app/AppContext"; +import Button from "../../../../../component/button/Button"; +import SelectableAccountList from "../../../../component/list/selectable/SelectableAccountList"; +import {NO_OP} from "../../../../../core/util/array/arrayUtils"; +import usePortfolioOverview from "../../../../../overview/util/hook/usePortfolioOverview"; + +function TransferMobileSelectAccounts() { + const { + state: {accounts} + } = useAppContext(); + const portfolioOverview = usePortfolioOverview(); + + return ( + <> + + +

    + {"Select your accounts to transfer to Pera Mobile"} +

    + +
    + + {`${portfolioOverview!.accounts.length} accounts available`} + + } + isMultipleSelect={true} + isInitiallyAllChecked={true} + onSelect={NO_OP} + /> + + + + + ); + + function handleAccountExporting(event: SyntheticEvent) { + event.preventDefault(); + + const formData = new FormData(event.currentTarget); + const selectedAccounts = [] as AppDBAccount[]; + + for (const selectedAccountAddress of formData.values()) { + selectedAccounts.push(accounts[selectedAccountAddress as string]); + } + + // // TODO: encrypt accounts here after mobile team meeting and send it to backup endpoint + console.log(selectedAccounts); + } +} + +export default TransferMobileSelectAccounts; diff --git a/src/account/page/transfer-mobile/page/select-accounts/_transfer-mobile-select-accounts.scss b/src/account/page/transfer-mobile/page/select-accounts/_transfer-mobile-select-accounts.scss new file mode 100644 index 0000000..430fbba --- /dev/null +++ b/src/account/page/transfer-mobile/page/select-accounts/_transfer-mobile-select-accounts.scss @@ -0,0 +1,12 @@ +@import "../../../../../core/ui/typography/typography-mixins"; + +.transfer-mobile-accounts__subheader { + margin-bottom: 32px; + padding: 0 16px; +} + +.transfer-mobile-accounts__select-form-cta { + width: 100%; + + margin-top: 48px; +} diff --git a/src/account/util/accountConstants.ts b/src/account/util/accountConstants.ts new file mode 100644 index 0000000..a227b82 --- /dev/null +++ b/src/account/util/accountConstants.ts @@ -0,0 +1,4 @@ +export const MNEMONIC_LENGTH = 25; +export const MAX_AVAILABLE_ACCOUNTS = 50; +export const ACCOUNT_ADDRESS_TRUNCATE_LENGTH = 6; +export const ACCOUNT_NAME_TRUNCATE_LENGTH = 22; diff --git a/src/account/util/accountTypes.ts b/src/account/util/accountTypes.ts new file mode 100644 index 0000000..53391cb --- /dev/null +++ b/src/account/util/accountTypes.ts @@ -0,0 +1 @@ +export type AccountComponentFlows = "default" | "connect"; diff --git a/src/account/util/accountUtils.test.ts b/src/account/util/accountUtils.test.ts new file mode 100644 index 0000000..3f24d25 --- /dev/null +++ b/src/account/util/accountUtils.test.ts @@ -0,0 +1,39 @@ +import {validateAccountCreateForm} from "./accountUtils"; + +describe("account utils", () => { + it("getWarningsWithInvalidAccountName", () => { + const newAccountName = "my account"; + const accounts = { + account1: { + type: "standard", + address: "0x0...", + pk: "K7BWxz...", + name: "my account", + date: new Date() + } as AppDBAccount + }; + const validationError = validateAccountCreateForm(accounts, newAccountName); + + expect(validationError).toEqual({ + type: "ACCOUNT_NAME_EXISTS", + title: "Account name already exists", + message: ["Please choose another name"] + }); + }); + + it("notGetWarningsWithValidAccountName", () => { + const newAccountName = "my account 2"; + const accounts = { + account1: { + type: "standard", + address: "0x0...", + pk: "K7BWxz...", + name: "my account", + date: new Date() + } as AppDBAccount + }; + const validationError = validateAccountCreateForm(accounts, newAccountName); + + expect(validationError).toEqual(undefined); + }); +}); diff --git a/src/account/util/accountUtils.tsx b/src/account/util/accountUtils.tsx new file mode 100644 index 0000000..2ea87a5 --- /dev/null +++ b/src/account/util/accountUtils.tsx @@ -0,0 +1,160 @@ +import {ReactComponent as AccountLedgerIcon} from "../../core/ui/icons/account-ledger.svg"; +import {ReactComponent as AccountDefaultIcon} from "../../core/ui/icons/account-default.svg"; + +import algosdk from "algosdk"; + +import { + ACCOUNT_ADDRESS_TRUNCATE_LENGTH, + ACCOUNT_NAME_TRUNCATE_LENGTH, + MAX_AVAILABLE_ACCOUNTS +} from "./accountConstants"; +import {PortfolioOverview} from "../../overview/util/hook/usePortfolioOverview"; + +/** + * Shortens the given account address + * @param {string} accountAddress + * @returns {string} AAAAAA...AAAAAAA + */ +function trimAccountAddress(accountAddress: string) { + return `${accountAddress.slice( + 0, + ACCOUNT_ADDRESS_TRUNCATE_LENGTH + )}...${accountAddress.slice(-ACCOUNT_ADDRESS_TRUNCATE_LENGTH)}`; +} + +/** + * Shortens the given account name + * @param {string} accountName + * @returns {string} Shortened account name... + */ +function trimAccountName( + accountName: string, + truncateLength = ACCOUNT_NAME_TRUNCATE_LENGTH +) { + return accountName.length > truncateLength + ? `${accountName.slice(0, truncateLength)}...` + : accountName; +} + +interface FormValidationInfo { + type: T; + title: string; + message: string[]; +} + +type AccountCreateFormValidationInfo = FormValidationInfo< + "ACCOUNT_NAME_EXISTS" | "ACCOUNT_LIMIT_EXCEEDED" +>; + +function validateAccountCreateForm( + accounts: AppDBScheme["accounts"], + accountName: string +) { + const accountAddressArray = Object.values(accounts); + const hasSameaccountName = accountAddressArray.find( + (account) => account.name === accountName + ); + let validationInfo: AccountCreateFormValidationInfo | undefined; + + if (hasSameaccountName) { + validationInfo = { + type: "ACCOUNT_NAME_EXISTS", + title: "Account name already exists", + message: ["Please choose another name"] + }; + } else if (accountAddressArray.length >= MAX_AVAILABLE_ACCOUNTS) { + validationInfo = { + type: "ACCOUNT_LIMIT_EXCEEDED", + title: "You've reached maximum number of account", + message: ["Maximum number of 50 accounts can be created."] + }; + } + + return validationInfo; +} + +/** + * Returns the lastly created account address + * @param {array} AppDBScheme.accounts + * @returns {string} + */ +function getLastAccountAddress(accounts: AppDBScheme["accounts"]) { + const accountAddressArray = Object.values(accounts); + + return accountAddressArray.sort((left, right) => { + const leftDate = left.date?.getTime() || 0; + const rightDate = right.date?.getTime() || 0; + + return rightDate - leftDate; + })[0].address; +} + +function getLastAccountType(accounts: AppDBScheme["accounts"]) { + const accountAddressArray = Object.values(accounts); + + return accountAddressArray.sort((left, right) => { + const leftDate = left.date?.getTime() || 0; + const rightDate = right.date?.getTime() || 0; + + return rightDate - leftDate; + })[0].type; +} + +/** + * Gets privateKey and derive mnemonic + * Uses this mnemonic to get AccountInfo via algosdk.mnemonicToSecretKey method + * Throws error if mnemonicToSecretKey method fails + * + * @param {(Uint8Array)} privateKey + * @returns + */ +function deriveAccountFromPrivateKey(privateKey: Uint8Array) { + const mnemonic = algosdk.secretKeyToMnemonic(privateKey); + + return algosdk.mnemonicToSecretKey(mnemonic); +} + +function getAccountIcon({ + type = "standard", + width, + height +}: { + type?: AccountType; + width: number; + height: number; +}) { + let icon: React.ReactNode; + + switch (type) { + case "ledger": + icon = ; + break; + default: + icon = ; + break; + } + + return icon; +} + +function getHighestBalanceAccount( + accounts: PortfolioOverview["accounts"] +): AccountOverview | undefined { + return accounts.sort( + (account1, account2) => + Number(account2.total_algo_value) - Number(account1.total_algo_value) + )[0]; +} + +/* eslint-enable no-magic-numbers */ + +export { + trimAccountAddress, + trimAccountName, + validateAccountCreateForm, + deriveAccountFromPrivateKey, + getLastAccountAddress, + getLastAccountType, + getAccountIcon, + getHighestBalanceAccount +}; diff --git a/src/asset/components/list/item/AssetListItem.tsx b/src/asset/components/list/item/AssetListItem.tsx new file mode 100644 index 0000000..3c64185 --- /dev/null +++ b/src/asset/components/list/item/AssetListItem.tsx @@ -0,0 +1,63 @@ +import "./_asset-list-item.scss"; + +import classNames from "classnames"; + +import SelectableListItem, { + SelectableListItemProps +} from "../../../../component/list/selectable-list-item/SelectableListItem"; +import { + isAssetType, + isNFT, + renderVerificationTierIcon +} from "../../../../core/util/asset/assetUtils"; +import {AccountASA} from "../../../../core/util/pera/api/peraApiModels"; +import AssetLogo from "../../logo/AssetLogo"; +import {getAssetImgSrc} from "../../../../core/util/image/imageUtils"; + +interface AssetListItemProps { + asset: Asset | AccountASA; + rightSide: React.ReactNode; + onSelect: SelectableListItemProps["onSelect"]; + customClassName?: string; +} + +function AssetListItem({ + asset, + rightSide, + onSelect, + customClassName +}: AssetListItemProps) { + return ( + +
    + +
    + +
    +
    + {asset.name} + + {renderVerificationTierIcon(asset)} +
    + + + {`${asset.unit_name}, ${asset.asset_id}`} + +
    + + {rightSide} +
    + ); +} + +export default AssetListItem; diff --git a/src/asset/components/list/item/_asset-list-item.scss b/src/asset/components/list/item/_asset-list-item.scss new file mode 100644 index 0000000..8c46029 --- /dev/null +++ b/src/asset/components/list/item/_asset-list-item.scss @@ -0,0 +1,42 @@ +.asset-list-item { + padding-bottom: 16px; + + &:not(:last-child) { + border-bottom: 1px solid var(--gray-100); + } + + .list-item__click-wrapper { + display: grid; + grid-template-columns: 32px 1fr auto; + + grid-gap: 16px; + grid-auto-flow: column; + + .asa-verified-icon, + .asa-trusted-icon, + .asa-suspicious-icon { + margin-left: 4px; + } + } +} + +.asset-list-item__grid-cell { + display: grid; + + &:first-child { + align-items: center; + } + + &:last-child { + justify-items: flex-end; + } +} + +.asset-list-item__logo--is-nft { + &.asset-logo { + .image__img, + .image__placeholder { + border-radius: 4px; + } + } +} diff --git a/src/asset/components/logo/AssetLogo.tsx b/src/asset/components/logo/AssetLogo.tsx new file mode 100644 index 0000000..723fde4 --- /dev/null +++ b/src/asset/components/logo/AssetLogo.tsx @@ -0,0 +1,28 @@ +import "./_asset-logo.scss"; + +import {memo} from "react"; +import classNames from "classnames"; + +import Image from "../../../component/image/Image"; +interface AssetLogoProps { + src: string; + assetName: string; + size?: number; + customClassName?: string; +} + +// eslint-disable-next-line no-magic-numbers +function AssetLogo({src, assetName, size = 32, customClassName}: AssetLogoProps) { + return ( + {assetName.substring(0, + ); +} + +export default memo(AssetLogo); diff --git a/src/asset/components/logo/_asset-logo.scss b/src/asset/components/logo/_asset-logo.scss new file mode 100644 index 0000000..0a349b3 --- /dev/null +++ b/src/asset/components/logo/_asset-logo.scss @@ -0,0 +1,18 @@ +@import "../../../core/ui/typography/_typography-mixins.scss"; + +.asset-logo { + .image__img { + border-radius: 100%; + } + + .image__placeholder { + @include typography--tagline(); + + position: static; + + color: var(--light-button-disabled-text); + + background: var(--background); + border-radius: 100%; + } +} diff --git a/src/asset/opt-in/components/account-link/AssetOptinAccountLink.tsx b/src/asset/opt-in/components/account-link/AssetOptinAccountLink.tsx new file mode 100644 index 0000000..ecec744 --- /dev/null +++ b/src/asset/opt-in/components/account-link/AssetOptinAccountLink.tsx @@ -0,0 +1,98 @@ +import {ReactComponent as ChevronRightIcon} from "../../../../core/ui/icons/chevron-right.svg"; +import {ReactComponent as WarningIcon} from "../../../../core/ui/icons/warning.svg"; + +import "./_asset-optin-account-link.scss"; + +import {Link} from "react-router-dom"; + +import {getAccountIcon, trimAccountName} from "../../../../account/util/accountUtils"; +import ROUTES from "../../../../core/route/routes"; +import {defaultPriceFormatter} from "../../../../core/util/number/numberUtils"; +import {ALGO_UNIT} from "../../../../core/ui/typography/typographyConstants"; +import {usePortfolioContext} from "../../../../overview/context/PortfolioOverviewContext"; +import {useAppContext} from "../../../../core/app/AppContext"; +import SimpleLoader from "../../../../component/loader/simple/SimpleLoader"; + +interface AssetOptinAccountLinkProps { + account: AppDBAccount; +} + +const TRIM_ACCOUNT_NAME_LENGTH = 18; + +function AssetOptinAccountLink({account}: AssetOptinAccountLinkProps) { + const { + state: {accounts} + } = useAppContext(); + const {algoFormatter} = defaultPriceFormatter(); + const portfolioOverview = usePortfolioContext(); + const accountPortfolio = portfolioOverview?.accounts.find( + (portfolioAccount) => portfolioAccount.address === account.address + ); + const accountPortfolioBalance = accountPortfolio + ? parseFloat(accountPortfolio.total_algo_value) + : 0; + + return ( + +
    + {getAccountIcon({ + type: accounts[account.address].type, + width: 32, + height: 32 + })} + +
    +

    + {"Selected account"} +

    + +

    + {trimAccountName(account.name, TRIM_ACCOUNT_NAME_LENGTH)} +

    +
    +
    + +
    + {renderAccountBalance()} + + +
    + + ); + + function renderAccountBalance() { + let node; + + if (!accountPortfolio) return ; + + if (accountPortfolioBalance > 0) { + node = ( +

    {`${ALGO_UNIT}${algoFormatter(accountPortfolioBalance, { + maximumFractionDigits: 2 + })}`}

    + ); + } else { + node = ( +
    +

    + + {"Balance too low"} +

    +

    + {`${ALGO_UNIT}0.00`} +

    +
    + ); + } + + return node; + } +} + +export default AssetOptinAccountLink; diff --git a/src/asset/opt-in/components/account-link/_asset-optin-account-link.scss b/src/asset/opt-in/components/account-link/_asset-optin-account-link.scss new file mode 100644 index 0000000..b5cab9c --- /dev/null +++ b/src/asset/opt-in/components/account-link/_asset-optin-account-link.scss @@ -0,0 +1,38 @@ +.asset-optin-account-link { + display: flex; + justify-content: space-between; + + margin-top: auto; + padding: 16px 40px 16px 28px; + + border-top: 1px solid var(--gray-200); + + &, + &:visited { + color: currentColor; + } +} + +.asset-optin-account-link__name { + display: flex; + align-items: center; + gap: 16px; +} + +.asset-optin-account-link__balance { + display: flex; + align-items: center; + gap: 16px; +} + +.asset-optin-account-link__balance-warning { + display: flex; + align-items: center; + gap: 4px; + + color: var(--helper-red-default); + + .warning-icon path { + fill: var(--helper-red-default); + } +} diff --git a/src/asset/opt-in/components/list/AssetOptinList.tsx b/src/asset/opt-in/components/list/AssetOptinList.tsx new file mode 100644 index 0000000..0202e1b --- /dev/null +++ b/src/asset/opt-in/components/list/AssetOptinList.tsx @@ -0,0 +1,96 @@ +import React, {useEffect, useCallback, useRef} from "react"; + +import SearchableList from "../../../../component/list/searchable-list/SearchableList"; +import useAsyncProcess from "../../../../core/network/async-process/useAsyncProcess"; +import {filterTruthyObjectValues} from "../../../../core/util/object/objectUtils"; +import {peraApi} from "../../../../core/util/pera/api/peraApi"; +import AssetOptinListItem from "./item/AssetOptinListItem"; +import {AccountASA} from "../../../../core/util/pera/api/peraApiModels"; +import {generateKeyMapFromArray} from "../../../../core/util/array/arrayUtils"; +import {useSimpleToaster} from "../../../../component/simple-toast/util/simpleToastHooks"; +import {assetDBManager} from "../../../../core/app/db"; + +interface AssetOptinListProps { + account: AppDBAccount; +} + +function AssetOptinList({account}: AssetOptinListProps) { + const accountAssetsRef = useRef(); + const { + state: {data: allAssets, isRequestPending, error}, + runAsyncProcess + } = useAsyncProcess>(); + const simpleToaster = useSimpleToaster(); + + const fetchAssets = useCallback( + ({query}: {query: string}) => { + runAsyncProcess(peraApi.getAssets(filterTruthyObjectValues({q: query}))); + }, + [runAsyncProcess] + ); + + useEffect(() => { + (async () => { + fetchAssets({query: ""}); + + if (!accountAssetsRef.current) { + const accountAssets = await assetDBManager.getAllByAccountAddress( + account.address + ); + + accountAssetsRef.current = accountAssets; + } + })(); + }, [account.address, fetchAssets]); + + if (error) { + simpleToaster.display({ + type: "error", + message: "There is an error, please try again" + }); + } + + return ( + + {(asset) => } + + ); + + function handleOnQueryChange(query: string) { + fetchAssets({query}); + } + + function filterAssets() { + const notOwnedAssets = []; + + if (allAssets) { + if (accountAssetsRef.current?.length) { + const ownedAssets: Record = generateKeyMapFromArray( + accountAssetsRef.current, + "asset_id" + ); + + for (const asset of allAssets?.results) { + if (asset.asset_id in ownedAssets === false) { + notOwnedAssets.push(asset); + } + } + } else { + return allAssets.results; + } + } + + return notOwnedAssets; + } +} + +export default React.memo(AssetOptinList); diff --git a/src/asset/opt-in/components/list/item/AssetOptinListItem.tsx b/src/asset/opt-in/components/list/item/AssetOptinListItem.tsx new file mode 100644 index 0000000..0b0fd30 --- /dev/null +++ b/src/asset/opt-in/components/list/item/AssetOptinListItem.tsx @@ -0,0 +1,134 @@ +import {ReactComponent as CheckmarkIcon} from "../../../../../core/ui/icons/checkmark.svg"; +import {ReactComponent as PlusIcon} from "../../../../../core/ui/icons/plus.svg"; + +import "./_asset-optin-list-item.scss"; + +import {useState} from "react"; +import algosdk, {Transaction} from "algosdk"; + +import Button from "../../../../../component/button/Button"; +import {useModalDispatchContext} from "../../../../../component/modal/context/ModalContext"; +import AssetListItem from "../../../../components/list/item/AssetListItem"; +import AssetOptinConfirmationModal, { + ASSET_OPTIN_CONFIRMATION_MODAL_ID +} from "../../../modal/confirmation/AssetOptinConfirmationModal"; +import algod from "../../../../../core/util/algod/algod"; +import {decryptSK} from "../../../../../core/util/nacl/naclUtils"; +import {useAppContext} from "../../../../../core/app/AppContext"; +import {useSimpleToaster} from "../../../../../component/simple-toast/util/simpleToastHooks"; +import {NO_OP} from "../../../../../core/util/array/arrayUtils"; +import {usePortfolioContext} from "../../../../../overview/context/PortfolioOverviewContext"; +import {ALGORAND_DEFAULT_TXN_WAIT_ROUNDS} from "../../../../../send-txn/util/sendTxnConstants"; + +interface AssetOptinListItemProps { + asset: Asset; + account: AppDBAccount; +} + +function AssetOptinListItem({asset, account}: AssetOptinListItemProps) { + const dispatchModalStateAction = useModalDispatchContext(); + const [optinState, setOptinState] = useState<"not-started" | "pending" | "done">( + "not-started" + ); + const accountPortfolio = usePortfolioContext()?.accounts.find( + (portfolioAccount) => portfolioAccount.address === account.address + ); + const { + state: {accounts, masterkey} + } = useAppContext(); + const simpleToaster = useSimpleToaster(); + const accountPortfolioBalance = accountPortfolio + ? parseFloat(accountPortfolio.total_algo_value) + : 0; + + return ( + + {optinState === "done" ? : } + + } + onSelect={NO_OP} + customClassName={"asset-optin-list-item"} + /> + ); + + function handleOptinClick() { + if (accountPortfolioBalance > 0) { + dispatchModalStateAction({ + type: "OPEN_MODAL", + payload: { + item: { + id: ASSET_OPTIN_CONFIRMATION_MODAL_ID, + children: ( + + ), + modalContentLabel: "Opt-in to asset" + } + } + }); + } else { + simpleToaster.display({ + message: "Balance too low to cover transaction fee", + type: "error" + }); + } + } + + async function handleApproveOptin(optinTxn: Transaction) { + setOptinState("pending"); + + closeConfirmationModal(); + + try { + // Decrypt secret_key and sign Opt-in txn + const sk = await decryptSK(account.pk, masterkey!); + const signedOptinTxn = optinTxn.signTxn(sk!); + + // Send txn to network + await algod.client.sendRawTransaction(signedOptinTxn).do(); + await algosdk.waitForConfirmation( + algod.client, + optinTxn.txID().toString(), + ALGORAND_DEFAULT_TXN_WAIT_ROUNDS + ); + + simpleToaster.display({ + message: `${asset.unit_name} successfully added to your account`, + type: "success" + }); + + setOptinState("done"); + } catch (error) { + setOptinState("not-started"); + + simpleToaster.display({ + message: `Couldn’t add ${asset.unit_name} to your account. Please try again.`, + type: "error" + }); + } + } + + function closeConfirmationModal() { + dispatchModalStateAction({ + type: "CLOSE_MODAL", + payload: { + id: ASSET_OPTIN_CONFIRMATION_MODAL_ID + } + }); + } +} + +export default AssetOptinListItem; diff --git a/src/asset/opt-in/components/list/item/_asset-optin-list-item.scss b/src/asset/opt-in/components/list/item/_asset-optin-list-item.scss new file mode 100644 index 0000000..6e2b658 --- /dev/null +++ b/src/asset/opt-in/components/list/item/_asset-optin-list-item.scss @@ -0,0 +1,21 @@ +.asset-optin-list-item { + .list-item__click-wrapper { + cursor: auto; + } +} + +.asset-optin-list-item__optin-button { + width: 48px; + + .check-mark-icon { + flex-shrink: 0; + } + + .plus-icon { + flex-shrink: 0; + + path { + fill: var(--purple-500); + } + } +} diff --git a/src/asset/opt-in/flow/AssetOptinFlow.tsx b/src/asset/opt-in/flow/AssetOptinFlow.tsx new file mode 100644 index 0000000..e1686d0 --- /dev/null +++ b/src/asset/opt-in/flow/AssetOptinFlow.tsx @@ -0,0 +1,24 @@ +import {Route, Routes} from "react-router-dom"; + +import ROUTES from "../../../core/route/routes"; +import AssetOptinPage from "../page/AssetOptinPage"; +import AssetOptinSelectAccount from "../page/select-account/AssetOptinSelectAccount"; +import Page from "../../../component/page/Page"; +import {withGoBackLink} from "../../../core/route/context/NavigationContext"; + +function AssetOptinFlow() { + return ( + + }> + } /> + + } + /> + + + ); +} + +export default withGoBackLink(AssetOptinFlow, ROUTES.OVERVIEW.ROUTE); diff --git a/src/asset/opt-in/modal/confirmation/AssetOptinConfirmationModal.tsx b/src/asset/opt-in/modal/confirmation/AssetOptinConfirmationModal.tsx new file mode 100644 index 0000000..4c1dff4 --- /dev/null +++ b/src/asset/opt-in/modal/confirmation/AssetOptinConfirmationModal.tsx @@ -0,0 +1,151 @@ +/* eslint-disable no-magic-numbers */ +import "./_asset-optin-confirmation-modal.scss"; + +import {List, ListItem} from "@hipo/react-ui-toolkit"; +import {useEffect, useState} from "react"; +import {Transaction} from "algosdk"; +import classNames from "classnames"; + +import AssetLogo from "../../../components/logo/AssetLogo"; +import {isNFT, renderVerificationTierIcon} from "../../../../core/util/asset/assetUtils"; +import ClipboardButton from "../../../../component/clipboard/button/ClipboardButton"; +import {getAccountIcon, trimAccountName} from "../../../../account/util/accountUtils"; +import {ALGO_UNIT} from "../../../../core/ui/typography/typographyConstants"; +import {defaultPriceFormatter} from "../../../../core/util/number/numberUtils"; +import Button from "../../../../component/button/Button"; +import {generateAssetOptinTxn} from "../../util/assetOptinUtils"; +import {getAssetImgSrc} from "../../../../core/util/image/imageUtils"; + +interface AssetOptinConfirmationModalProps { + asset: Asset; + account: AppDBAccount; + onApprove: (txn: Transaction) => void; + onClose: VoidFunction; +} + +export const ASSET_OPTIN_CONFIRMATION_MODAL_ID = "asset-optin-confirmation-modal-id"; + +function AssetOptinConfirmationModal({ + asset, + account, + onApprove, + onClose +}: AssetOptinConfirmationModalProps) { + const {algoFormatter} = defaultPriceFormatter(); + const [optinTxn, setOptinTxn] = useState(); + + useEffect(() => { + (async () => { + const assetOptinTxn = await generateAssetOptinTxn(account.address, asset.asset_id); + + setOptinTxn(assetOptinTxn); + })(); + }, [account, asset.asset_id]); + + return ( +
    +

    {"Opt-in"}

    + +
    + + +
    +

    {asset.name}

    + + {renderVerificationTierIcon(asset, 24)} +
    + +

    {asset.unit_name}

    +
    + + + {({title, content}) => ( + +

    {title}

    + + {content} +
    + )} +
    + +

    + { + "Adding an asset requires sending a transaction with a minimum transaction fee. This will appear on your transaction history." + } +

    + + + + +
    + ); + + function getOptinInfoItems() { + return [ + { + title: "ID", + content: ( +
    +

    {asset.asset_id}

    + + +
    + ) + }, + { + title: "Account", + content: ( +
    + {getAccountIcon({type: account.type, width: 24, height: 24})} + +

    + {trimAccountName(account.name)} +

    +
    + ) + }, + { + title: "Transaction Fee", + content: ( +

    + {optinTxn ? `${ALGO_UNIT}${algoFormatter(optinTxn.fee)}` : "-"} +

    + ) + } + ]; + } + + function handleApproveOptin() { + if (optinTxn) { + onApprove(optinTxn); + } + } +} + +export default AssetOptinConfirmationModal; diff --git a/src/asset/opt-in/modal/confirmation/_asset-optin-confirmation-modal.scss b/src/asset/opt-in/modal/confirmation/_asset-optin-confirmation-modal.scss new file mode 100644 index 0000000..90bcd01 --- /dev/null +++ b/src/asset/opt-in/modal/confirmation/_asset-optin-confirmation-modal.scss @@ -0,0 +1,62 @@ +.asset-optin-confirmation-modal { + width: 424px; +} + +.asset-optin-confirmation-modal__asset { + margin-top: 40px; +} + +.asset-optin-confirmation-modal__asset-name { + display: flex; + align-items: center; + gap: 4px; + + margin: 16px 0 4px; +} + +.asset-optin-confirmation-modal__info-list { + margin: 24px 0 32px; +} + +.asset-optin-confirmation-modal__info-list-item { + display: flex; + flex-direction: row; + align-items: center; + justify-content: space-between; + + padding: 16px 0; + + border-top: 1px solid var(--gray-100); +} + +.asset-optin-confirmation-modal__logo--is-nft { + &.asset-logo { + .image__img, + .image__placeholder { + border-radius: 12px; + } + } +} + +.asset-optin-confirmation-modal__info-list-item__content { + display: flex; + align-items: center; + gap: 8px; +} + +.asset-optin-confirmation-modal__copy-button { + width: max-content; + height: max-content; + + padding: 0; + + .copy-icon { + path { + fill: var(--text-gray-light); + } + } +} + +.asset-optin-confirmation-modal__approve-cta { + margin: 48px 0 12px; +} diff --git a/src/asset/opt-in/modal/info/AssetOptinInfoModal.tsx b/src/asset/opt-in/modal/info/AssetOptinInfoModal.tsx new file mode 100644 index 0000000..480c97d --- /dev/null +++ b/src/asset/opt-in/modal/info/AssetOptinInfoModal.tsx @@ -0,0 +1,55 @@ +import {ReactComponent as OptinIcon} from "../../../../core/ui/icons/opt-in.svg"; + +import "./_asset-optin-info-modal.scss"; + +import {useNavigate} from "react-router-dom"; + +import { + ASSET_OPTIN_INFO_MODAL_ID, + ASSET_OPTIN_INFO_MODAL_TIPS +} from "./util/assetOptinInfoModalConstants"; +import {STORED_KEYS} from "../../../../core/util/storage/web/webStorage"; +import ROUTES from "../../../../core/route/routes"; +import {ASSET_OPTIN_PAGE_SEARCH_PARAM} from "../../page/AssetOptinPage"; +import InfoModal from "../../../../component/info-modal/InfoModal"; + +interface AssetOptinInfoModalProps { + account?: AppDBAccount; + displayDontShowAgain?: boolean; +} + +function AssetOptinInfoModal({ + account, + displayDontShowAgain = false +}: AssetOptinInfoModalProps) { + const navigate = useNavigate(); + + return ( + } + infoItems={ASSET_OPTIN_INFO_MODAL_TIPS} + displayDontShowAgain={ + displayDontShowAgain + ? { + webStorageKey: STORED_KEYS.HIDE_ASSET_OPTIN_INFO_MODAL + } + : undefined + } + /> + ); + + function navigateToAssetOptinPage() { + if (!account) return; + + navigate({ + pathname: ROUTES.ASSET_OPTIN.ROUTE, + search: `?${ASSET_OPTIN_PAGE_SEARCH_PARAM}=${account?.address}` + }); + } +} + +export default AssetOptinInfoModal; diff --git a/src/asset/opt-in/modal/info/_asset-optin-info-modal.scss b/src/asset/opt-in/modal/info/_asset-optin-info-modal.scss new file mode 100644 index 0000000..50a441d --- /dev/null +++ b/src/asset/opt-in/modal/info/_asset-optin-info-modal.scss @@ -0,0 +1,26 @@ +@import "../../../../core/ui/typography/typography-mixins"; + +.asset-optin-page__info-modal { + .info-modal__description-list-item:not(:first-of-type) { + @include text-color--gray(); + @include typography--secondary-body(); + } + + .info-modal__description-list-item:first-of-type { + @include typography--medium-body(); + } + + .asset-icon, + .collectibles-icon, + .warning-icon { + path { + fill: var(--text-gray-light); + } + } + + .opt-in-icon { + path { + fill: var(--helper-purple-default); + } + } +} diff --git a/src/asset/opt-in/modal/info/util/assetOptinInfoModalConstants.tsx b/src/asset/opt-in/modal/info/util/assetOptinInfoModalConstants.tsx new file mode 100644 index 0000000..9c81f9e --- /dev/null +++ b/src/asset/opt-in/modal/info/util/assetOptinInfoModalConstants.tsx @@ -0,0 +1,34 @@ +import {ReactComponent as TipIcon} from "../../../../../core/ui/icons/tip.svg"; +import {ReactComponent as AssetIcon} from "../../../../../core/ui/icons/asset.svg"; +import {ReactComponent as CollectiblesIcon} from "../../../../../core/ui/icons/collectibles.svg"; +import {ReactComponent as WarningIcon} from "../../../../../core/ui/icons/warning.svg"; + +const ASSET_OPTIN_INFO_MODAL_ID = "asset-opt-in-info-modal"; + +const ASSET_OPTIN_INFO_MODAL_TIPS = [ + { + id: "header", + icon: , + description: "What is opt-in?" + }, + { + id: "optin-to-asset", + icon: , + description: + "Opt-in to an asset (eg. USDC) to be able to receive it from another user or application" + }, + { + id: "optin-to-collectibles", + icon: , + description: + "Opt-in to a collectible using its ID to be able to transfer it to your wallet" + }, + { + id: "optin-min-balance", + icon: , + description: + "Account should have a minimum balance in order to compensate the transaction fee" + } +]; + +export {ASSET_OPTIN_INFO_MODAL_ID, ASSET_OPTIN_INFO_MODAL_TIPS}; diff --git a/src/asset/opt-in/page/AssetOptinPage.tsx b/src/asset/opt-in/page/AssetOptinPage.tsx new file mode 100644 index 0000000..c86aab0 --- /dev/null +++ b/src/asset/opt-in/page/AssetOptinPage.tsx @@ -0,0 +1,79 @@ +import {ReactComponent as InfoIcon} from "../../../core/ui/icons/info.svg"; + +import "./_asset-optin-page.scss"; + +import {useSearchParams} from "react-router-dom"; + +import {useAppContext} from "../../../core/app/AppContext"; +import AssetOptinAccountLink from "../components/account-link/AssetOptinAccountLink"; +import AssetOptinList from "../components/list/AssetOptinList"; +import {getHighestBalanceAccount} from "../../../account/util/accountUtils"; +import {usePortfolioContext} from "../../../overview/context/PortfolioOverviewContext"; +import EmptyAccountList from "../../../account/component/list/empty/EmptyAccountList"; +import Button from "../../../component/button/Button"; +import {useModalDispatchContext} from "../../../component/modal/context/ModalContext"; +import AssetOptinInfoModal from "../modal/info/AssetOptinInfoModal"; +import PeraLoader from "../../../component/loader/pera/PeraLoader"; +import {ASSET_OPTIN_INFO_MODAL_ID} from "../modal/info/util/assetOptinInfoModalConstants"; + +export const ASSET_OPTIN_PAGE_SEARCH_PARAM = "address"; + +function AssetOptinPage() { + const { + state: {accounts} + } = useAppContext(); + const dispatchModalStateAction = useModalDispatchContext(); + const portfolioOverview = usePortfolioContext(); + const highestBalanceAccount = getHighestBalanceAccount( + portfolioOverview?.accounts || [] + ); + const [searchParams] = useSearchParams(); + + if (!portfolioOverview) { + return ; + } + + const accountAddress = + searchParams.get(ASSET_OPTIN_PAGE_SEARCH_PARAM) || highestBalanceAccount?.address; + const account = accountAddress ? accounts[accountAddress!] : undefined; + + return ( +
    +
    +

    {"Opt-in to Asset"}

    + + +
    + + {account ? ( + <> + + + + + ) : ( + + )} +
    + ); + + function handleInfoButtonClick() { + dispatchModalStateAction({ + type: "OPEN_MODAL", + payload: { + item: { + id: ASSET_OPTIN_INFO_MODAL_ID, + modalContentLabel: "Opt-in to asset", + children: + } + } + }); + } +} + +export default AssetOptinPage; diff --git a/src/asset/opt-in/page/_asset-optin-page.scss b/src/asset/opt-in/page/_asset-optin-page.scss new file mode 100644 index 0000000..06066c1 --- /dev/null +++ b/src/asset/opt-in/page/_asset-optin-page.scss @@ -0,0 +1,39 @@ +@import "../../../layouts/card-layout/_card-layout.scss"; + +.asset-optin-page { + @extend .card-layout; + + display: flex; + flex-direction: column; + + width: 480px; + height: 600px; + + padding: 0; + + .spinner { + margin: auto; + } +} + +.asset-optin-page__header { + display: flex; + align-items: center; + gap: 8px; + + padding: 28px 28px 32px; +} + +.asset-optin-page__info-button { + width: max-content; + height: max-content; + + padding: 0; + + border: unset; + + .info-icon { + width: 20px; + height: 20px; + } +} diff --git a/src/asset/opt-in/page/select-account/AssetOptinSelectAccount.tsx b/src/asset/opt-in/page/select-account/AssetOptinSelectAccount.tsx new file mode 100644 index 0000000..dbff2d2 --- /dev/null +++ b/src/asset/opt-in/page/select-account/AssetOptinSelectAccount.tsx @@ -0,0 +1,45 @@ +import "./_asset-optin-select-account.scss"; + +import {useNavigate} from "react-router-dom"; + +import GoBackButton from "../../../../component/go-back-button/GoBackButton"; +import {usePortfolioContext} from "../../../../overview/context/PortfolioOverviewContext"; +import ROUTES from "../../../../core/route/routes"; +import {ASSET_OPTIN_PAGE_SEARCH_PARAM} from "../AssetOptinPage"; +import SearchableAccountList from "../../../../account/component/list/searchable/SearchableAccountList"; +import PeraLoader from "../../../../component/loader/pera/PeraLoader"; + +function AssetOptinSelectAccount() { + const portfolioOverview = usePortfolioContext(); + const navigate = useNavigate(); + + return ( +
    + + + {portfolioOverview ? ( + + ) : ( + + )} +
    + ); + + function handleSelectAccount(address: string) { + navigate({ + pathname: ROUTES.ASSET_OPTIN.ROUTE, + search: `?${ASSET_OPTIN_PAGE_SEARCH_PARAM}=${address}` + }); + } +} + +export default AssetOptinSelectAccount; diff --git a/src/asset/opt-in/page/select-account/_asset-optin-select-account.scss b/src/asset/opt-in/page/select-account/_asset-optin-select-account.scss new file mode 100644 index 0000000..ac7698b --- /dev/null +++ b/src/asset/opt-in/page/select-account/_asset-optin-select-account.scss @@ -0,0 +1,21 @@ +@import "../../../../layouts/card-layout/_card-layout.scss"; + +.asset-optin-select-account { + @extend .card-layout; + + display: flex; + flex-direction: column; + + width: 480px; + height: 590px; + + padding: 0; +} + +.asset-optin-select-account__go-back-button { + padding: 28px 28px 0; +} + +.asset-optin-select-account__loader { + margin: auto; +} diff --git a/src/asset/opt-in/util/assetOptinUtils.ts b/src/asset/opt-in/util/assetOptinUtils.ts new file mode 100644 index 0000000..703fe8c --- /dev/null +++ b/src/asset/opt-in/util/assetOptinUtils.ts @@ -0,0 +1,20 @@ +import algosdk, {Transaction} from "algosdk"; + +import algod from "../../../core/util/algod/algod"; + +async function generateAssetOptinTxn( + accountAddress: string, + assetId: number +): Promise { + const suggestedParams = await algod.client.getTransactionParams().do(); + + return algosdk.makeAssetTransferTxnWithSuggestedParamsFromObject({ + from: accountAddress, + to: accountAddress, + assetIndex: assetId, + amount: 0, + suggestedParams + }); +} + +export {generateAssetOptinTxn}; diff --git a/src/asset/util/assetModels.d.ts b/src/asset/util/assetModels.d.ts new file mode 100644 index 0000000..5ef31f3 --- /dev/null +++ b/src/asset/util/assetModels.d.ts @@ -0,0 +1,50 @@ +type AssetVerificationTier = "trusted" | "verified" | "unverified" | "suspicious"; + +type AssetMedia = "image" | "video" | "mixed" | "unknown"; + +interface Collectible { + standard: "arc3" | "arc69"; + media_type: ASAMediaType; + primary_image: string; + title: string; + explorer_url: string; + media: { + type: ASAMediaType; + download_url: string; + preview_url?: string; + extension: string; + }[]; + description: string; +} + +interface AssetCreator { + id: number; + address: string; + is_verified_asset_creator: boolean; +} + +interface AccountAsset { + amount: number; + "asset-id": number; + "is-frozen": boolean; +} + +interface Asset { + asset_id: number; + name: string; + logo: string | null; + unit_name: string; + fraction_decimals: number; + total: string; + usd_value: string | null; + is_verified: boolean; + verification_tier: AssetVerificationTier; + explorer_url: string; + collectible: Collectible | null; + creator: AssetCreator; +} + +type ListAssetRequestParams = ListRequestParams & { + q?: string; + asset_ids?: string; +}; diff --git a/src/component/algo-currency/AlgoCurrency.tsx b/src/component/algo-currency/AlgoCurrency.tsx new file mode 100644 index 0000000..ea39385 --- /dev/null +++ b/src/component/algo-currency/AlgoCurrency.tsx @@ -0,0 +1,62 @@ +import {ReactComponent as AlgoIcon} from "../../core/ui/icons/algo.svg"; + +import "./_algo-currency.scss"; + +import useAsyncProcess from "../../core/network/async-process/useAsyncProcess"; +import useInterval from "../../core/util/hook/useInterval"; +import {peraApi} from "../../core/util/pera/api/peraApi"; +import {CurrencyInformation} from "../../core/util/pera/api/peraApiModels"; +import {MINUTE_IN_MS} from "../../core/util/time/timeConstants"; +import {formatNumber} from "../../core/util/number/numberUtils"; +import SimpleLoader from "../loader/simple/SimpleLoader"; +import {useAppContext} from "../../core/app/AppContext"; + +// eslint-disable-next-line no-magic-numbers +const CURRENCY_POLLING_INTERVAL = 5 * MINUTE_IN_MS; +const numberFormatter = formatNumber({maximumFractionDigits: 2}); + +interface AlgoCurrencyProps { + currency?: string; +} + +function AlgoCurrency({currency = "USD"}: AlgoCurrencyProps) { + const { + state: {masterkey} + } = useAppContext(); + const {state, runAsyncProcess} = useAsyncProcess({ + shouldResetDataWhenPending: false + }); + + useInterval( + () => { + runAsyncProcess(peraApi.getCurrency({currency})); + }, + CURRENCY_POLLING_INTERVAL, + { + shouldRunCallbackAtStart: !!masterkey + } + ); + + if (!masterkey || state.error) return null; + + return ( +
    + {state.isRequestFetched && state.data ? ( + <> +
    + +
    + + {`≈ ${numberFormatter( + parseFloat(state.data.exchange_price) + )} ${state.data.currency_id}`} + + ) : ( + + )} +
    + ); +} + +export default AlgoCurrency; diff --git a/src/component/algo-currency/_algo-currency.scss b/src/component/algo-currency/_algo-currency.scss new file mode 100644 index 0000000..211b6bb --- /dev/null +++ b/src/component/algo-currency/_algo-currency.scss @@ -0,0 +1,33 @@ +.algo-currency { + display: flex; + gap: 6px; + + min-width: 136px; + height: 40px; + + padding: 10px 16px; + + border: 1px solid var(--gray-200); + border-radius: 12px; +} + +.algo-currency__icon-wrapper { + display: grid; + + width: 20px; + height: 20px; + + background-color: var(--gray-400); + border-radius: 100%; + place-content: center; + + .algo-icon { + path { + fill: var(--white); + } + } +} + +.algo-currency__loader { + margin: auto; +} diff --git a/src/component/async-content/AsyncContent.tsx b/src/component/async-content/AsyncContent.tsx new file mode 100644 index 0000000..c111351 --- /dev/null +++ b/src/component/async-content/AsyncContent.tsx @@ -0,0 +1,23 @@ +export type AsyncContentStatus = "error" | "pending" | "success"; +export type AsyncContentError = undefined | AsyncProcessState["error"]; + +interface AsyncContentProps { + requestStates: AsyncProcessState[]; + content: (status: AsyncContentStatus, error?: AsyncContentError) => JSX.Element; +} + +function AsyncContent({requestStates, content}: AsyncContentProps) { + const isAllFetched = requestStates.every((request) => request.isRequestFetched); + const requestError = requestStates.find((request) => request.error); + let node = content("pending"); + + if (requestError) { + node = content("error", requestError.error); + } else if (isAllFetched) { + node = content("success"); + } + + return node; +} + +export default AsyncContent; diff --git a/src/component/button/Button.tsx b/src/component/button/Button.tsx new file mode 100644 index 0000000..3641e5b --- /dev/null +++ b/src/component/button/Button.tsx @@ -0,0 +1,60 @@ +import React from "react"; +import { + Button as HipoButton, + ButtonProps as HipoButtonProps +} from "@hipo/react-ui-toolkit"; +import classNames from "classnames"; + +import SimpleLoader from "../loader/simple/SimpleLoader"; + +// This SCSS file is imported to the app under index.tsx +// import "./_button.scss"; + +export type ButtonProps = HipoButtonProps & { + buttonType?: "primary" | "secondary" | "light" | "ghost" | "danger" | "custom"; + size?: "small" | "medium" | "large"; + shouldHideChildrenOnSpinnerView?: boolean; +}; + +const Button = React.forwardRef( + // eslint-disable-next-line prefer-arrow-callback + function ButtonComponent(props, ref) { + const { + buttonType = "primary", + size = "medium", + customClassName, + children, + shouldHideChildrenOnSpinnerView, + shouldDisplaySpinner, + ...otherProps + } = props; + const className = classNames( + "typography--button", + customClassName, + `button--${buttonType}`, + `button--${size}`, + "typography--button" + ); + const shouldHideChildren = shouldDisplaySpinner && shouldHideChildrenOnSpinnerView; + + return ( + + } + {...otherProps}> + {shouldHideChildren ? null : children} + + ); + } +); + +export default Button; diff --git a/src/component/button/LinkButton.tsx b/src/component/button/LinkButton.tsx new file mode 100644 index 0000000..452bdd6 --- /dev/null +++ b/src/component/button/LinkButton.tsx @@ -0,0 +1,57 @@ +import React from "react"; +import {Link, LinkProps} from "react-router-dom"; +import classNames from "classnames"; + +import {ButtonProps} from "./Button"; + +// This SCSS file is imported to the app under index.tsx +// import "./_button.scss"; + +export type LinkButtonProps = Omit & + Pick & { + isDisabled?: boolean; + to: LinkProps["to"]; + external?: boolean; + }; + +const LinkButton = React.forwardRef( + // eslint-disable-next-line prefer-arrow-callback + function LinkButtonComponent(props, ref) { + const { + buttonType = "primary", + size = "medium", + isDisabled = false, + external = false, + customClassName, + ...otherProps + } = props; + const linkButtonClassname = classNames( + `button`, + `button--${buttonType}`, + `button--${size}`, + `typography--button`, + { + "button--is-inactive": isDisabled + }, + `link-button`, + customClassName + ); + + if (external) { + return ( + // eslint-disable-next-line jsx-a11y/anchor-has-content + + ); + } + + return ; + } +); + +export default LinkButton; diff --git a/src/component/checkbox/Checkbox.tsx b/src/component/checkbox/Checkbox.tsx new file mode 100644 index 0000000..cf39919 --- /dev/null +++ b/src/component/checkbox/Checkbox.tsx @@ -0,0 +1,17 @@ +import { + CheckboxInput as HipoCheckboxInput, + CheckboxInputProps as HipoCheckboxInputProps +} from "@hipo/react-ui-toolkit"; +import classNames from "classnames"; + +// This SCSS file is imported to the app under index.tsx +// import "./_checkbox-input.scss"; + +function CheckboxInput(props: HipoCheckboxInputProps) { + const {customClassName, ...otherProps} = props; + const className = classNames(customClassName, `pera-checkbox-input`); + + return ; +} + +export default CheckboxInput; diff --git a/src/component/clipboard/button/ClipboardButton.tsx b/src/component/clipboard/button/ClipboardButton.tsx new file mode 100644 index 0000000..fede311 --- /dev/null +++ b/src/component/clipboard/button/ClipboardButton.tsx @@ -0,0 +1,58 @@ +import "./_clipboard-button.scss"; + +import {ReactComponent as CopyIcon} from "../../../core/ui/icons/copy.svg"; + +import classNames from "classnames"; + +import Button, {ButtonProps} from "../../button/Button"; +import useClipboard from "../useClipboard"; +import {useSimpleToaster} from "../../simple-toast/util/simpleToastHooks"; + +type ClipboardButtonProps = Omit & { + textToCopy: string; + children?: React.ReactNode; + copiedMessage?: string; + iconPosition?: "left" | "right"; +}; + +function ClipboardButton({ + textToCopy, + copiedMessage, + iconPosition = "left", + children, + "aria-label": ariaLabel, + customClassName, + ...otherProps +}: ClipboardButtonProps) { + const clipboard = useClipboard(); + const simpleToaster = useSimpleToaster(); + + return ( + + ); + + function copy() { + clipboard.copyToClipboard(textToCopy); + + simpleToaster.display({ + message: copiedMessage || "Copied!", + type: "success" + }); + } +} + +export default ClipboardButton; diff --git a/src/component/clipboard/button/_clipboard-button.scss b/src/component/clipboard/button/_clipboard-button.scss new file mode 100644 index 0000000..31472b3 --- /dev/null +++ b/src/component/clipboard/button/_clipboard-button.scss @@ -0,0 +1,25 @@ +.clipboard-button { + display: flex; + align-items: center; +} + +.clipboard-button__content { + display: flex; + align-items: center; + justify-content: center; + gap: 8px; + + .copy-icon { + path { + fill: var(--primary-button-text); + } + } +} + +.clipboard-button__content__text { + width: max-content; +} + +.clipboard-button__copied-message { + margin-left: 24px; +} diff --git a/src/component/clipboard/useClipboard.tsx b/src/component/clipboard/useClipboard.tsx new file mode 100644 index 0000000..042e7d3 --- /dev/null +++ b/src/component/clipboard/useClipboard.tsx @@ -0,0 +1,66 @@ +import {useCallback, useEffect, useState} from "react"; + +const DEFAULT_RESET_TIMEOUT = 2000; + +function useClipboard() { + const [hasCopied, setHasCopiedState] = useState(false); + + const copyToClipboard = useCallback(async (text: string) => { + let promise; + + try { + const result = await navigator.permissions.query({ + // @ts-ignore: Type '"clipboard-write"' is not assignable to type 'PermissionName' + name: "clipboard-write" + }); + + if (result.state === "granted" || result.state === "prompt") { + try { + promise = navigator.clipboard.writeText(text); + } catch (error) { + promise = copyWithExecCommand(text); + } + } else { + promise = copyWithExecCommand(text); + } + } catch (error) { + promise = copyWithExecCommand(text); + } + + promise.then(() => setHasCopiedState(true)); + + return promise; + }, []); + + useEffect(() => { + const timeout = setTimeout(() => { + setHasCopiedState(false); + }, DEFAULT_RESET_TIMEOUT); + + return () => { + clearTimeout(timeout); + }; + }, [hasCopied]); + + return {hasCopied, setHasCopiedState, copyToClipboard}; +} + +function copyWithExecCommand(textToCopy: string) { + return new Promise((resolve, reject) => { + try { + const dummyClipboardElement = document.createElement("input"); + + document.body.appendChild(dummyClipboardElement); + dummyClipboardElement.value = textToCopy; + dummyClipboardElement.select(); + document.execCommand("copy"); + document.body.removeChild(dummyClipboardElement); + + resolve(undefined); + } catch (error) { + reject(error); + } + }); +} + +export default useClipboard; diff --git a/src/component/form/utils/form.d.ts b/src/component/form/utils/form.d.ts new file mode 100644 index 0000000..2361908 --- /dev/null +++ b/src/component/form/utils/form.d.ts @@ -0,0 +1,5 @@ +interface FormValidationInfo { + type: T; + title: string; + message: string[]; +} diff --git a/src/component/format-balance/usd/FormatUSDBalance.tsx b/src/component/format-balance/usd/FormatUSDBalance.tsx new file mode 100644 index 0000000..bc82efd --- /dev/null +++ b/src/component/format-balance/usd/FormatUSDBalance.tsx @@ -0,0 +1,31 @@ +import {useAppContext} from "../../../core/app/AppContext"; +import {defaultPriceFormatter} from "../../../core/util/number/numberUtils"; + +interface FormatUSDBalanceProps { + value: string | number; + prefix?: string; + customClassName?: string; +} + +function FormatUSDBalance({value, prefix, customClassName}: FormatUSDBalanceProps) { + const { + state: {preferredNetwork} + } = useAppContext(); + const {usdFormatter} = defaultPriceFormatter(); + + return
    {renderBalance()}
    ; + + function renderBalance() { + let balance = "-"; + + if (preferredNetwork === "mainnet") { + const presign = prefix?.concat(" ") || ""; + + balance = `${presign}${usdFormatter(Number(value))}`; + } + + return balance; + } +} + +export default FormatUSDBalance; diff --git a/src/component/go-back-button/GoBackButton.tsx b/src/component/go-back-button/GoBackButton.tsx new file mode 100644 index 0000000..3751013 --- /dev/null +++ b/src/component/go-back-button/GoBackButton.tsx @@ -0,0 +1,55 @@ +import {ReactComponent as ArrowLeftIcon} from "../../core/ui/icons/arrow-left.svg"; + +import "./_go-back-button.scss"; + +import {Link, To} from "react-router-dom"; +import classNames from "classnames"; + +type GoBackButtonProps = { + text?: string; + to?: To; + icon?: JSX.Element; + iconPosition?: "left" | "right"; + + children?: React.ReactNode; + customClassName?: string; +}; + +function GoBackButton({ + text, + to, + icon = , + iconPosition = "left", + + children, + customClassName +}: GoBackButtonProps) { + const goBackButtonContainerClassNames = classNames( + "go-back-button-container", + customClassName + ); + + const actionButton = ( + + {icon} + + ); + + return ( +
    + {iconPosition === "left" && actionButton} + + {text && ( + + {text} + + )} + + {iconPosition === "right" && actionButton} + + {children} +
    + ); +} + +export default GoBackButton; diff --git a/src/component/go-back-button/_go-back-button.scss b/src/component/go-back-button/_go-back-button.scss new file mode 100644 index 0000000..fb5c9ad --- /dev/null +++ b/src/component/go-back-button/_go-back-button.scss @@ -0,0 +1,11 @@ +.go-back-button-container { + display: flex; + align-items: center; + gap: 16px; + + margin-bottom: 32px; +} + +.go-back-button { + display: flex; +} diff --git a/src/component/image/Image.tsx b/src/component/image/Image.tsx new file mode 100644 index 0000000..44d7366 --- /dev/null +++ b/src/component/image/Image.tsx @@ -0,0 +1,56 @@ +import "./_image.scss"; + +import React, {useState} from "react"; +import classNames from "classnames"; + +import SimpleLoader from "../loader/simple/SimpleLoader"; + +type ImageProps = React.DetailedHTMLProps< + React.ImgHTMLAttributes, + HTMLImageElement +> & { + customClassName?: string; + customPlaceholder?: React.ReactNode; +}; + +function Image({customClassName, alt, customPlaceholder, ...imgProps}: ImageProps) { + const [shouldDisplayPlaceholder, setPlaceholderVisibility] = useState(true); + const [shouldDisplayError, setErrorVisibility] = useState(false); + + return ( +
    + {shouldDisplayPlaceholder && !shouldDisplayError && ( +
    + +
    + )} + + {shouldDisplayError && ( +
    {customPlaceholder || alt}
    + )} + + {!shouldDisplayError && ( + {shouldDisplayPlaceholder + )} +
    + ); + + function handleHidePlaceholder() { + setPlaceholderVisibility(false); + } + + function handleDisplayError() { + handleHidePlaceholder(); + setErrorVisibility(true); + } +} + +export default Image; diff --git a/src/component/image/_image.scss b/src/component/image/_image.scss new file mode 100644 index 0000000..d4f0a05 --- /dev/null +++ b/src/component/image/_image.scss @@ -0,0 +1,24 @@ +.image { + position: relative; + + &__placeholder { + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; + + display: flex; + align-items: center; + justify-content: center; + + height: 100%; + } + + &__img { + width: 100%; + height: 100%; + + object-fit: contain; + } +} diff --git a/src/component/info-box/InfoBox.tsx b/src/component/info-box/InfoBox.tsx new file mode 100644 index 0000000..8a888d2 --- /dev/null +++ b/src/component/info-box/InfoBox.tsx @@ -0,0 +1,37 @@ +import "./_info-box.scss"; + +import {ReactComponent as InfoIcon} from "../../core/ui/icons/info.svg"; + +import classNames from "classnames"; + +interface InfoBoxProps { + infoText: string; + title?: string; + icon?: React.ReactNode; + children?: React.ReactNode; + className?: string; +} + +function InfoBox({title, infoText, icon, className, children}: InfoBoxProps) { + const infoBoxClassname = classNames("info-box", className); + + return ( +
    +
    + {icon || } +
    + +
    + {title &&

    {title}

    } + +

    + {infoText} +

    + + {children} +
    +
    + ); +} + +export default InfoBox; diff --git a/src/component/info-box/_info-box.scss b/src/component/info-box/_info-box.scss new file mode 100644 index 0000000..09a0f20 --- /dev/null +++ b/src/component/info-box/_info-box.scss @@ -0,0 +1,32 @@ +.info-box { + display: flex; + gap: 12px; + + padding: 16px 20px; + + background: var(--card-default); + border-radius: 16px; + box-shadow: var(--shadow-small); +} + +.info-box-icon { + width: 28px; + height: 28px; + + padding: 6px; + + background-color: var(--helper-orange-lighter); + border-radius: 50%; + + .info-icon { + path { + fill: var(--helper-orange-darker); + } + } +} + +.info-box-content { + display: flex; + flex-direction: column; + gap: 12px; +} diff --git a/src/component/info-modal/InfoModal.tsx b/src/component/info-modal/InfoModal.tsx new file mode 100644 index 0000000..f4c5a58 --- /dev/null +++ b/src/component/info-modal/InfoModal.tsx @@ -0,0 +1,107 @@ +import "./_info-modal.scss"; + +import {ReactNode} from "react"; +import {List, ListItem} from "@hipo/react-ui-toolkit"; +import classNames from "classnames"; + +import webStorage from "../../core/util/storage/web/webStorage"; +import Button from "../button/Button"; +import {useModalDispatchContext} from "../modal/context/ModalContext"; + +interface InfoModalProps { + modalId: string; + iconHeader?: ReactNode; + title: string; + infoItems: {id: string; icon?: ReactNode; description: ReactNode}[]; + confirmationText?: string; + onConfirm?: () => void; + displayDontShowAgain?: {webStorageKey: string}; + footer?: ReactNode; + customClassName?: string; +} + +function InfoModal({ + modalId, + iconHeader, + title, + infoItems, + confirmationText, + onConfirm, + displayDontShowAgain, + footer, + customClassName +}: InfoModalProps) { + const dispatchModalStateAction = useModalDispatchContext(); + const infoModalClassname = classNames("info-modal-wrapper", customClassName); + + return ( +
    + {iconHeader &&
    {iconHeader}
    } + +

    {title}

    + +
    + + {({icon, description}) => ( + + {icon && ( +
    + {icon} +
    + )} + +
    {description}
    +
    + )} +
    +
    + + {footer &&
    {footer}
    } + +
    + + + {displayDontShowAgain && ( + + )} +
    +
    + ); + + function handleOnConfirm() { + handleCloseModal(); + + if (onConfirm) { + onConfirm(); + } + } + + function handleDontShowAgainClick() { + if (!displayDontShowAgain) return; + + webStorage.local.setItem(displayDontShowAgain.webStorageKey, true); + + handleOnConfirm(); + } + + function handleCloseModal() { + dispatchModalStateAction({ + type: "CLOSE_MODAL", + payload: {id: modalId} + }); + } +} + +export default InfoModal; diff --git a/src/component/info-modal/_info-modal.scss b/src/component/info-modal/_info-modal.scss new file mode 100644 index 0000000..9cf5d39 --- /dev/null +++ b/src/component/info-modal/_info-modal.scss @@ -0,0 +1,85 @@ +.info-modal-wrapper { + display: grid; + + justify-items: center; + gap: 24px; +} + +.info-modal__icon-wrapper { + display: grid; + + width: 106px; + height: 106px; + + margin: 28px auto 0; + + background-color: var(--card-default); + border-radius: 100%; + box-shadow: var(--shadow-large); + + place-content: center; +} + +.info-modal__description-box { + width: 424px; + + margin-top: 8px; + padding: 20px; + + background-color: var(--gray-100); + border-radius: 12px; +} + +.info-modal__description-header { + display: flex; + align-items: center; + gap: 16px; + + margin-left: 4px; +} + +.info-modal__description-list-item { + display: flex; + align-items: center; + gap: 16px; + + &:not(:last-child) { + margin-bottom: 20px; + } + + &--header { + .info-modal__description-list-item__icon-wrapper { + background-color: var(--gray-100); + } + } +} + +.info-modal__description-list-item__icon-wrapper { + display: grid; + + width: 32px; + height: 32px; + flex-shrink: 0; + + background-color: rgba(var(--gray-400-rgb), 0.1); + border-radius: 100%; + + place-content: center; + + .tip-icon { + path { + fill: var(--helper-purple-default); + } + } +} + +.info-modal__cta-group { + display: grid; + gap: 12px; + + width: 100%; +} + +.info-modal__continue-cta { + margin-top: 24px; +} diff --git a/src/component/list/searchable-list/SearchableList.tsx b/src/component/list/searchable-list/SearchableList.tsx new file mode 100644 index 0000000..d2f94cd --- /dev/null +++ b/src/component/list/searchable-list/SearchableList.tsx @@ -0,0 +1,60 @@ +import {ReactComponent as SearchIcon} from "../../../core/ui/icons/search.svg"; + +import "./_searchable-list.scss"; + +import { + FormField, + TypeaheadInput, + List, + ListProps, + TypeaheadInputProps +} from "@hipo/react-ui-toolkit"; +import classNames from "classnames"; + +import SimpleLoader from "../../loader/simple/SimpleLoader"; + +type SearchableListProps = Omit & { + typeaheadSearchProps: TypeaheadInputProps; +} & { + items: Item[]; + shouldDisplaySpinner?: boolean; +}; + +const MAX_VISIBLE_LIST_ITEMS = 100; + +function SearchableList(props: SearchableListProps) { + const { + children, + typeaheadSearchProps, + shouldDisplaySpinner = false, + items, + customClassName, + ...listProps + } = props; + + return ( +
    + + } + rightIcon={shouldDisplaySpinner && } + {...typeaheadSearchProps} + /> + + + {items.length > 0 ? ( + + {(...listItemProps) => children(...listItemProps)} + + ) : ( +
    + )} +
    + ); +} + +export default SearchableList; diff --git a/src/component/list/searchable-list/_searchable-list.scss b/src/component/list/searchable-list/_searchable-list.scss new file mode 100644 index 0000000..e1b4c15 --- /dev/null +++ b/src/component/list/searchable-list/_searchable-list.scss @@ -0,0 +1,39 @@ +.searchable-list { + display: flex; + flex-direction: column; + gap: 16px; + + height: 356px; + + overflow-y: auto; + + padding: 0 28px; +} + +.searchable-list__search { + margin: 0 28px 24px; + + .form-field__label { + display: flex; + gap: 16px; + } + + .search-icon { + path { + fill: var(--text-gray-light); + } + } + + .input-container__icon { + width: 20px; + height: 20px; + } + + .input-container__left-icon { + margin-right: 16px; + } +} + +.searchable-list__no-result-message { + margin: auto; +} diff --git a/src/component/list/selectable-list-item/SelectableListItem.tsx b/src/component/list/selectable-list-item/SelectableListItem.tsx new file mode 100644 index 0000000..63a5ff1 --- /dev/null +++ b/src/component/list/selectable-list-item/SelectableListItem.tsx @@ -0,0 +1,64 @@ +import "./_selectable-list-item.scss"; + +import {ListItem, ListItemProps, CheckboxInputProps} from "@hipo/react-ui-toolkit"; +import classNames from "classnames"; + +import CheckboxInput from "../../checkbox/Checkbox"; +import {NO_OP} from "../../../core/util/array/arrayUtils"; + +export interface SelectableListItemProps + extends Omit, + Omit { + id: string; + onSelect: (id: string, isChecked: boolean) => void; + shouldShowCheckbox?: boolean; +} + +function SelectableListItem(props: SelectableListItemProps) { + const { + id, + children, + isSelected, + onSelect, + shouldShowCheckbox = false, + customClassName, + ...otherProps + } = props; + const selectableListItemClassname = classNames( + "selectable-list-item", + customClassName, + {"selectable-list-item__with-checkbox": shouldShowCheckbox} + ); + + return ( + + {shouldShowCheckbox && ( + + )} + + {children} + + ); + + function handleOnSelect() { + return onSelect(id, !isSelected); + } +} + +export default SelectableListItem; diff --git a/src/component/list/selectable-list-item/_selectable-list-item.scss b/src/component/list/selectable-list-item/_selectable-list-item.scss new file mode 100644 index 0000000..c55c237 --- /dev/null +++ b/src/component/list/selectable-list-item/_selectable-list-item.scss @@ -0,0 +1,11 @@ +.selectable-list-item__with-checkbox { + .list-item__click-wrapper { + display: grid; + grid-template-columns: 20px 1fr; + grid-gap: 16px; + } +} + +.selectable-list-item__checkbox-input { + pointer-events: none; +} diff --git a/src/component/loader/pera/PeraLoader.tsx b/src/component/loader/pera/PeraLoader.tsx new file mode 100644 index 0000000..385dbd0 --- /dev/null +++ b/src/component/loader/pera/PeraLoader.tsx @@ -0,0 +1,37 @@ +import grayPeraLoaderAnimation from "../../../core/ui/animation/Pera_Loader_Gray.json"; +import colorfulPeraLoaderAnimation from "../../../core/ui/animation/Pera_Loader_Colorful.json"; +import "./_pera-loader.scss"; + +import Lottie from "lottie-react"; +import classNames from "classnames"; + +interface PeraLoaderProps { + mode: "gray" | "colorful"; + customClassName?: string; +} + +function PeraLoader({mode, customClassName}: PeraLoaderProps) { + const source = mode === "gray" ? grayPeraLoaderAnimation : colorfulPeraLoaderAnimation; + const loader = ( + + ); + + if (mode === "colorful") { + return ( +
    + {loader} +
    + ); + } + + return loader; +} + +export default PeraLoader; diff --git a/src/component/loader/pera/_pera-loader.scss b/src/component/loader/pera/_pera-loader.scss new file mode 100644 index 0000000..d425c9d --- /dev/null +++ b/src/component/loader/pera/_pera-loader.scss @@ -0,0 +1,20 @@ +.pera-loader--gray { + width: 100px; + height: 100px; +} + +.pera-loader--align-center { + position: absolute; + top: 50%; + left: 50%; + + transform: translate(-50%, -50%); +} + +.pera-loader-wrapper--colorful { + width: 56px; + height: 56px; + + background-color: var(--helper-purple-default); + border-radius: 50%; +} diff --git a/src/component/loader/simple/SimpleLoader.tsx b/src/component/loader/simple/SimpleLoader.tsx new file mode 100644 index 0000000..501fd22 --- /dev/null +++ b/src/component/loader/simple/SimpleLoader.tsx @@ -0,0 +1,24 @@ +import "./_simple-loader.scss"; + +import classNames from "classnames"; + +function SimpleLoader({customClassName}: {customClassName?: string}) { + return ( + + + + ); +} + +export default SimpleLoader; diff --git a/src/component/loader/simple/_simple-loader.scss b/src/component/loader/simple/_simple-loader.scss new file mode 100644 index 0000000..9a952dd --- /dev/null +++ b/src/component/loader/simple/_simple-loader.scss @@ -0,0 +1,15 @@ +.simple-loader { + width: 16px; + height: 16px; +} + +.simple-loader__content { + transform-origin: center; + animation: SimpleLoaderAnimation 0.75s infinite linear; +} + +@keyframes SimpleLoaderAnimation { + 100% { + transform: rotate(360deg); + } +} diff --git a/src/component/lock-button/LockButton.tsx b/src/component/lock-button/LockButton.tsx new file mode 100644 index 0000000..fede67a --- /dev/null +++ b/src/component/lock-button/LockButton.tsx @@ -0,0 +1,46 @@ +import {ReactComponent as LockIcon} from "../../core/ui/icons/lock.svg"; +import {ReactComponent as CommandKeyIcon} from "../../core/ui/icons/command-key.svg"; + +import "./_lock-button.scss"; + +import Button from "../button/Button"; +import {useAppContext} from "../../core/app/AppContext"; +import useLockApp from "../../core/util/hook/useLockApp"; + +function LockButton() { + const { + state: {masterkey} + } = useAppContext(); + const lockApp = useLockApp(); + const isLocked = !masterkey; + + return ( + + ); + + function handleLockingApp() { + if (!isLocked) lockApp(); + } +} + +export default LockButton; diff --git a/src/component/lock-button/_lock-button.scss b/src/component/lock-button/_lock-button.scss new file mode 100644 index 0000000..7cb8588 --- /dev/null +++ b/src/component/lock-button/_lock-button.scss @@ -0,0 +1,34 @@ +@import "../../core//ui//typography/typography-mixins"; + +.lock-button, +.lock-button__shortcut { + @include typography--button(); + + display: flex; + align-items: center; +} + +.lock-button { + gap: 8px; + + width: 124px; + height: 40px; + + .lock-icon { + path { + fill: var(--light-button-text); + } + } + + &.button--is-inactive { + .lock-icon { + path { + fill: var(--light-button-disabled-text); + } + } + } +} + +.lock-button__shortcut { + color: var(--text-gray-light); +} diff --git a/src/component/modal/Modal.tsx b/src/component/modal/Modal.tsx new file mode 100644 index 0000000..4357568 --- /dev/null +++ b/src/component/modal/Modal.tsx @@ -0,0 +1,83 @@ +import "./_modal.scss"; + +import ReactModal from "react-modal"; +import classNames from "classnames"; + +import {MODAL_CLOSE_TIMEOUT} from "./util/modalConstants"; +import {ModalPosition} from "./util/modalTypes"; + +interface ModalProps { + isOpen: boolean; + modalContentLabel: string; + onClose: (...args: any[]) => void; + onAfterOpen?: (...args: any[]) => void; + onAfterClose?: (...args: any[]) => void; + closeTimeout?: number; + shouldCloseOnOverlayClick?: boolean; + customClassName?: string; + customOverlayClassName?: string; + children?: React.ReactNode; + shouldCloseOnEsc?: boolean; + bodyOpenClassName?: string; + portalClassName?: string; + position?: ModalPosition; +} + +ReactModal.defaultStyles = {}; +ReactModal.setAppElement("#root"); + +function getParent() { + return document.querySelector("#modal-root") as HTMLElement; +} + +function Modal({ + isOpen, + customClassName, + children, + closeTimeout = MODAL_CLOSE_TIMEOUT, + modalContentLabel, + onAfterClose, + onAfterOpen, + customOverlayClassName, + shouldCloseOnOverlayClick = true, + shouldCloseOnEsc = true, + bodyOpenClassName, + onClose, + portalClassName, + position = "center" +}: ModalProps) { + const containerClassName = classNames("ReactModal__Content", customClassName); + const bodyClassName = classNames("ReactModal__Body--open", bodyOpenClassName); + const overlayClassName = classNames( + `ReactModal__Overlay--position--${position}`, + customOverlayClassName + ); + + return ( + +
    {children}
    +
    + ); + + function handleRequestClose() { + if (onClose && (shouldCloseOnOverlayClick || shouldCloseOnEsc)) { + onClose(); + } + } +} + +export default Modal; +export type {ModalProps}; diff --git a/src/component/modal/_modal.scss b/src/component/modal/_modal.scss new file mode 100644 index 0000000..2b2f962 --- /dev/null +++ b/src/component/modal/_modal.scss @@ -0,0 +1,81 @@ +.modal { + &__close-button { + margin-left: auto; + + svg { + width: 24px; + } + } +} + +.modal__body { + padding: 28px; + + background: var(--card-default); + + border-radius: 16px; +} + +.ReactModal__Body--open { + overflow: hidden; +} + +.ReactModal__Overlay { + position: fixed; + top: 0; + bottom: 0; + left: 0; + right: 0; + + z-index: 3; + + display: flex; + + padding: 20px 16px; + + background-color: var(--overlay); + opacity: 0; + + transition: opacity var(--default-animation); + + &--position { + &--center { + align-items: center; + justify-content: center; + } + + &--top { + justify-content: center; + } + + &--top-right { + align-items: flex-start; + justify-content: flex-end; + } + + &--top-left { + align-items: flex-start; + justify-content: flex-start; + } + } +} + +.ReactModal__Overlay--after-open { + opacity: 1; +} + +.ReactModal__Overlay--before-close { + opacity: 0; +} + +.ReactModal__Content { + position: relative; + + max-height: 90vh; + + overflow: auto; + + &:focus { + outline: none; + } +} diff --git a/src/component/modal/context/ModalContext.tsx b/src/component/modal/context/ModalContext.tsx new file mode 100644 index 0000000..f83e2dd --- /dev/null +++ b/src/component/modal/context/ModalContext.tsx @@ -0,0 +1,139 @@ +import {createContext, Dispatch, useContext} from "react"; + +import {ModalStackItem} from "../util/modalTypes"; + +interface ModalState { + modalStack: ModalStackItem[]; +} + +const initialModalState: ModalState = { + modalStack: [] +}; + +type ModalStateAction = + | { + type: "OPEN_MODAL"; + payload: { + item: ModalStackItem; + }; + } + | { + type: "CLOSE_MODAL"; + payload: { + id: string; + }; + } + | { + type: "CLOSE_ALL_MODALS"; + } + | { + type: "CLEAN_MODAL_STACK"; + }; + +function modalStateReducer(state = initialModalState, action: ModalStateAction) { + let newState = state; + + switch (action.type) { + case "OPEN_MODAL": { + if (state.modalStack.find((item) => item.id === action.payload.item.id)) { + const filteredModalStack = state.modalStack.filter( + (item) => item.id !== action.payload.item.id + ); + + newState = { + modalStack: [ + { + ...action.payload.item, + isOpen: true + }, + ...filteredModalStack + ] + }; + } else { + newState = { + ...state, + modalStack: [{...action.payload.item, isOpen: true}, ...state.modalStack] + }; + } + + break; + } + + case "CLOSE_MODAL": { + const foundModal = state.modalStack.find((item) => item.id === action.payload.id); + + if (foundModal) { + const filteredModalStack = state.modalStack.filter( + (item) => item.id !== action.payload.id + ); + + newState = { + ...state, + modalStack: [ + { + ...foundModal, + isOpen: false + }, + ...filteredModalStack + ] + }; + } else { + throw new Error( + `Modal cannot be found: ${ + action.payload.id + }. \nAvailable modal ids: ${state.modalStack.map((item) => item.id)}` + ); + } + + break; + } + + case "CLOSE_ALL_MODALS": { + newState = { + ...state, + modalStack: state.modalStack.map((item) => ({...item, isOpen: false})) + }; + + break; + } + + case "CLEAN_MODAL_STACK": { + newState = { + ...state, + modalStack: [] + }; + + break; + } + + default: + break; + } + + return newState; +} + +const ModalStateContext = createContext(initialModalState); +const ModalDispatchContext = createContext( + (() => undefined) as Dispatch +); + +ModalStateContext.displayName = "ModalStateContext"; +ModalDispatchContext.displayName = "ModalDispatchContext"; + +function useModalStateContext() { + return useContext(ModalStateContext); +} + +function useModalDispatchContext() { + return useContext(ModalDispatchContext); +} + +export { + initialModalState, + ModalStateContext, + ModalDispatchContext, + modalStateReducer, + useModalStateContext, + useModalDispatchContext +}; diff --git a/src/component/modal/context/ModalContextProvider.tsx b/src/component/modal/context/ModalContextProvider.tsx new file mode 100644 index 0000000..afe15a1 --- /dev/null +++ b/src/component/modal/context/ModalContextProvider.tsx @@ -0,0 +1,54 @@ +import React, {useReducer} from "react"; + +import Modal from "../Modal"; +import { + initialModalState, + ModalDispatchContext, + ModalStateContext, + modalStateReducer +} from "./ModalContext"; + +interface ModalContextProviderProps { + children: React.ReactNode; +} + +function ModalContextProvider({children}: ModalContextProviderProps) { + const [modalState, dispatchModalStateAction] = useReducer( + modalStateReducer, + initialModalState + ); + + return ( + + + {children} + + {modalState.modalStack.map( + ({id, isOpen, children: modalChildren, customOverlayClassName, ...rest}) => ( + + +
    {modalChildren}
    +
    +
    + ) + )} +
    +
    + ); + + function handleCloseModal(id: string) { + return () => + dispatchModalStateAction({ + type: "CLOSE_MODAL", + payload: { + id + } + }); + } +} + +export default ModalContextProvider; diff --git a/src/component/modal/util/modalConstants.ts b/src/component/modal/util/modalConstants.ts new file mode 100644 index 0000000..4d9d8b5 --- /dev/null +++ b/src/component/modal/util/modalConstants.ts @@ -0,0 +1,10 @@ +import {SECOND_IN_MS} from "../../../core/util/time/timeConstants"; + +const MODAL_CLOSE_TIMEOUT = + parseFloat( + getComputedStyle(document.documentElement) + .getPropertyValue("--default-animation") + .trim() || "0.2" + ) * SECOND_IN_MS; + +export {MODAL_CLOSE_TIMEOUT}; diff --git a/src/component/modal/util/modalTypes.ts b/src/component/modal/util/modalTypes.ts new file mode 100644 index 0000000..17b0a53 --- /dev/null +++ b/src/component/modal/util/modalTypes.ts @@ -0,0 +1,20 @@ +import {ModalProps} from "../Modal"; + +type ModalPosition = + | "center" + | "top" + | "top-left" + | "top-right" + | "right-center" + | "bottom-right" + | "bottom-center" + | "bottom-left" + | "left-center"; + +interface ModalStackItem extends Omit { + id: string; + isOpen?: boolean; + onClose?: ModalProps["onClose"]; +} + +export type {ModalPosition, ModalStackItem}; diff --git a/src/component/network-badge/NetworkBadge.tsx b/src/component/network-badge/NetworkBadge.tsx new file mode 100644 index 0000000..f695183 --- /dev/null +++ b/src/component/network-badge/NetworkBadge.tsx @@ -0,0 +1,16 @@ +import {useAppContext} from "../../core/app/AppContext"; +import "./_network-badge.scss"; + +function NetworkBadge() { + const { + state: {preferredNetwork} + } = useAppContext(); + + if (preferredNetwork !== "testnet") { + return null; + } + + return
    {"TESTNET"}
    ; +} + +export default NetworkBadge; diff --git a/src/component/network-badge/_network-badge.scss b/src/component/network-badge/_network-badge.scss new file mode 100644 index 0000000..1e2675a --- /dev/null +++ b/src/component/network-badge/_network-badge.scss @@ -0,0 +1,9 @@ +.network-badge { + margin-left: 12px; + padding: 4px 8px; + + color: var(--helper-orange-darker); + + background: var(--helper-orange-lighter); + border-radius: 12px; +} diff --git a/src/component/page/Page.tsx b/src/component/page/Page.tsx new file mode 100644 index 0000000..707a64d --- /dev/null +++ b/src/component/page/Page.tsx @@ -0,0 +1,33 @@ +import "./_page.scss"; + +import classNames from "classnames"; +import {Outlet} from "react-router-dom"; + +import PageHeader from "./header/PageHeader"; +import useSetPageTitle from "../../core/util/hook/useSetPageTitle"; + +interface PageProps { + title: string; + customClassName?: string; + banner?: React.ReactNode; +} + +function Page({customClassName, title, banner}: PageProps) { + useSetPageTitle(title); + + return ( +
    +
    + {banner} + + +
    + +
    + +
    +
    + ); +} + +export default Page; diff --git a/src/component/page/_page.scss b/src/component/page/_page.scss new file mode 100644 index 0000000..959d0a7 --- /dev/null +++ b/src/component/page/_page.scss @@ -0,0 +1,32 @@ +.page { + min-height: 100vh; + + &--without-header { + .page-header { + display: none; + } + } + + &--with-banner { + .page__header-wrapper { + background-color: var(--gray-800); + } + + .page-header { + background-color: var(--background); + + border-radius: 24px 24px 0 0; + } + } +} + +.page-content { + max-width: var(--page-content-max-width); + + margin: 0 auto; + padding: 0 32px 40px; +} + +.page__header-wrapper { + background-color: var(--background); +} diff --git a/src/component/page/header/PageHeader.tsx b/src/component/page/header/PageHeader.tsx new file mode 100644 index 0000000..7510ef2 --- /dev/null +++ b/src/component/page/header/PageHeader.tsx @@ -0,0 +1,73 @@ +import {ReactComponent as PeraLogo} from "../../../core/ui/icons/pera-logo.svg"; +import {ReactComponent as ArrowLeftIcon} from "../../../core/ui/icons/arrow-left.svg"; + +import "./_page-header.scss"; + +import {useState} from "react"; +import {Link} from "react-router-dom"; +import classNames from "classnames"; + +import AlgoCurrency from "../../algo-currency/AlgoCurrency"; +import LockButton from "../../lock-button/LockButton"; +import NetworkBadge from "../../network-badge/NetworkBadge"; +import ROUTES from "../../../core/route/routes"; +import useScroll from "../../../core/util/hook/useScroll"; +import {getPageHeaderBackButtonText} from "./util/pageHeaderUtils"; +import useShouldShowPageHeaderGoBackButton from "./util/useShouldShowPageHeaderGoBackButton"; +import {useNavigationContext} from "../../../core/route/context/NavigationContext"; +import {useAppContext} from "../../../core/app/AppContext"; + +interface PageHeaderProps { + customClassName?: string; +} + +function PageHeader({customClassName}: PageHeaderProps) { + const { + state: {hasAccounts} + } = useAppContext(); + const [scrollPosition, setScrollPosition] = useState(0); + const shouldShowGoBackButton = useShouldShowPageHeaderGoBackButton(); + const {navigationState} = useNavigationContext(); + + useScroll(() => { + setScrollPosition(Math.round(window.pageYOffset)); + }); + + return ( +
    0 + })}> +
    + + + + + + + {shouldShowGoBackButton && ( +
    + + + + {getPageHeaderBackButtonText(navigationState.headerGoBackLink)} + +
    + )} +
    + +
    + + + +
    +
    + ); +} +export default PageHeader; diff --git a/src/component/page/header/_page-header.scss b/src/component/page/header/_page-header.scss new file mode 100644 index 0000000..aec90f7 --- /dev/null +++ b/src/component/page/header/_page-header.scss @@ -0,0 +1,61 @@ +@import "../../../core/ui/typography/_typography-mixins.scss"; + +.page-header { + position: sticky; + top: 0; + z-index: var(--page-header-z-index); + + display: flex; + justify-content: space-between; + + width: 100%; + + margin-bottom: 32px; + padding: 19px 24px 13px; + + background-color: transparent; + box-shadow: transparent; + + transition: background-color var(--default-animation); +} + +.page-header--has-scrolled { + background-color: var(--background); +} + +.page-header__indicator-group { + display: flex; + justify-content: flex-end; + gap: 16px; +} + +.page-header__go-back-button { + @include typography--button(); + + gap: 8px; + + margin-left: 20px; + padding: 10px; + + .arrow-left-icon { + width: 16px; + height: 16px; + + path { + fill: var(--ghost-button-text); + } + } + + &:before { + display: inline-block; + + width: 1px; + height: 30px; + + border-left: 1px solid var(--gray-200); + + content: " "; + + transform: translateX(-16px); + } +} diff --git a/src/component/page/header/util/pageHeaderConstants.ts b/src/component/page/header/util/pageHeaderConstants.ts new file mode 100644 index 0000000..9fc58da --- /dev/null +++ b/src/component/page/header/util/pageHeaderConstants.ts @@ -0,0 +1,16 @@ +import ROUTES from "../../../../core/route/routes"; + +const AVAILABLE_PAGE_HEADER_GO_BACK_ROUTES = [ + ROUTES.ACCOUNT.ROUTE, + ROUTES.ACCOUNT.CREATE.FULL_PATH, + ROUTES.ACCOUNT.IMPORT.PASSPHRASE.FULL_PATH, + ROUTES.ACCOUNT.IMPORT.PASSPHRASE.NAME.FULL_PATH, + ROUTES.ACCOUNT.IMPORT.PASSPHRASE.RECOVERY.FULL_PATH, + ROUTES.ACCOUNT.IMPORT.PERA_SYNC.FULL_PATH, + ROUTES.ACCOUNT.IMPORT.PERA_SYNC.QR.FULL_PATH, + ROUTES.PASSWORD.CREATE.FULL_PATH, + ROUTES.ASSET_OPTIN.ROUTE, + ROUTES.ASSET_OPTIN.ACCOUNTS.FULL_PATH +]; + +export {AVAILABLE_PAGE_HEADER_GO_BACK_ROUTES}; diff --git a/src/component/page/header/util/pageHeaderUtils.ts b/src/component/page/header/util/pageHeaderUtils.ts new file mode 100644 index 0000000..29d40a8 --- /dev/null +++ b/src/component/page/header/util/pageHeaderUtils.ts @@ -0,0 +1,26 @@ +import ROUTES from "../../../../core/route/routes"; + +function getPageHeaderBackButtonText(goBackLink: string) { + let text = ""; + + switch (goBackLink) { + case ROUTES.ACCOUNT.ROUTE: + text = "Add Account"; + break; + + case ROUTES.OVERVIEW.ROUTE: + text = "Accounts"; + break; + + case ROUTES.BASE: + text = "Home"; + break; + + default: + break; + } + + return `Back to ${text}`; +} + +export {getPageHeaderBackButtonText}; diff --git a/src/component/page/header/util/useShouldShowPageHeaderGoBackButton.tsx b/src/component/page/header/util/useShouldShowPageHeaderGoBackButton.tsx new file mode 100644 index 0000000..993b26c --- /dev/null +++ b/src/component/page/header/util/useShouldShowPageHeaderGoBackButton.tsx @@ -0,0 +1,13 @@ +import {useLocation} from "react-router-dom"; + +import {AVAILABLE_PAGE_HEADER_GO_BACK_ROUTES} from "./pageHeaderConstants"; + +function useShouldShowPageHeaderGoBackButton() { + const location = useLocation(); + + return AVAILABLE_PAGE_HEADER_GO_BACK_ROUTES.some( + (route) => route === location.pathname + ); +} + +export default useShouldShowPageHeaderGoBackButton; diff --git a/src/component/page/sidebar/Sidebar.tsx b/src/component/page/sidebar/Sidebar.tsx new file mode 100644 index 0000000..0704d7a --- /dev/null +++ b/src/component/page/sidebar/Sidebar.tsx @@ -0,0 +1,83 @@ +import "./_sidebar.scss"; + +import {NavLink, NavLinkProps} from "react-router-dom"; +import {List, ListItem} from "@hipo/react-ui-toolkit"; +import classNames from "classnames"; + +import {SIDEBAR_FOOTER_LINKS, SIDEBAR_SOCIAL_LINK} from "./util/sidebarConstants"; +import {useAppContext} from "../../../core/app/AppContext"; +import {generateSidebarLinks} from "./util/sidebarUtils"; + +function Sidebar() { + const { + state: {hashedMasterkey, masterkey, hasAccounts} + } = useAppContext(); + const navlinkClassnames: NavLinkProps["className"] = ({isActive}) => + classNames("sidebar__nav-link", { + "sidebar__nav-link--active": isActive + }); + + return ( +
    + ); +} + +export default Sidebar; diff --git a/src/component/page/sidebar/_sidebar.scss b/src/component/page/sidebar/_sidebar.scss new file mode 100644 index 0000000..1a5b4c5 --- /dev/null +++ b/src/component/page/sidebar/_sidebar.scss @@ -0,0 +1,120 @@ +.sidebar, +.sidebar__nav-list, +.sidebar__footer { + display: flex; + flex-direction: column; + gap: 8px; +} + +.sidebar { + position: fixed; + top: 0; + left: 0; + + width: 240px; + height: 100vh; + + padding: 112px 16px 32px; +} + +.sidebar__nav { + flex: 1; +} + +.sidebar__nav-list-item { + width: max-content; + + border-radius: 12px; + + transition: background-color var(--default-animation); + + &:hover { + background-color: var(--primary-button-disabled-bg); + } +} + +.sidebar__nav-list-item--disabled { + color: var(--text-gray-light); + + svg path { + fill: var(--text-gray-light); + } + + &:hover { + background-color: var(--background); + + .sidebar__nav-link { + pointer-events: none; + } + } +} + +.sidebar__nav-link { + display: flex; + align-items: center; + gap: 16px; + + padding: 10px 24px 10px 12px; + + border-radius: 12px; + + text-decoration: none; + + transition: background-color var(--default-animation); + + &, + &:visited { + color: currentColor; + } + + &--active { + color: var(--helper-purple-default); + background: var(--helper-purple-lighter); + + svg path { + fill: var(--helper-purple-default); + } + + &:visited { + color: var(--helper-purple-default); + } + } +} + +.sidebar__footer { + margin-left: 12px; +} + +.sidebar__footer-list { + display: flex; + flex-direction: column; + gap: 12px; + + margin-bottom: 32px; +} + +.sidebar__footer-link { + &, + &:visited { + color: var(--text-gray); + } + + &:hover { + color: var(--text-main); + } +} + +.sidebar__footer-social-list { + display: flex; + gap: 16px; +} + +.sidebar__footer-social-link { + &:hover { + path { + fill: var(--text-main); + + transition: fill var(--default-animation); + } + } +} diff --git a/src/component/page/sidebar/util/sidebarConstants.tsx b/src/component/page/sidebar/util/sidebarConstants.tsx new file mode 100644 index 0000000..18b71da --- /dev/null +++ b/src/component/page/sidebar/util/sidebarConstants.tsx @@ -0,0 +1,37 @@ +import {ReactComponent as TwitterIcon} from "../../../../core/ui/icons/twitter.svg"; +import {ReactComponent as DiscordIcon} from "../../../../core/ui/icons/discord.svg"; +import {ReactComponent as RedditIcon} from "../../../../core/ui/icons/reddit.svg"; + +export const SIDEBAR_FOOTER_LINKS = [ + { + text: "Get Help", + to: "https://perawallet.app/support/" + }, + { + text: "About Pera", + to: "https://perawallet.app/" + }, + { + text: "Pera Explorer", + to: "https://explorer.perawallet.app/" + }, + { + text: "Terms of Use", + to: "https://perawallet.app/terms-and-services/" + } +]; + +export const SIDEBAR_SOCIAL_LINK = [ + { + icon: , + to: "https://twitter.com/PeraAlgoWallet" + }, + { + icon: , + to: "https://discord.com/invite/gR2UdkCTXQ" + }, + { + icon: , + to: "https://www.reddit.com/r/PeraWallet/" + } +]; diff --git a/src/component/page/sidebar/util/sidebarUtils.tsx b/src/component/page/sidebar/util/sidebarUtils.tsx new file mode 100644 index 0000000..f1dea71 --- /dev/null +++ b/src/component/page/sidebar/util/sidebarUtils.tsx @@ -0,0 +1,30 @@ +import {ReactComponent as HomeIcon} from "../../../../core/ui/icons/home.svg"; +import {ReactComponent as ShareIcon} from "../../../../core/ui/icons/share.svg"; +import {ReactComponent as SettingsIcon} from "../../../../core/ui/icons/settings.svg"; + +import ROUTES from "../../../../core/route/routes"; + +function generateSidebarLinks(hasAnyAccounts: boolean, hasHashedMasterkey: boolean) { + return [ + { + id: "home", + icon: , + text: hasHashedMasterkey ? "Accounts" : "Home", + to: hasAnyAccounts ? ROUTES.OVERVIEW.ROUTE : ROUTES.BASE + }, + { + id: "send", + icon: , + text: "Send", + to: ROUTES.SEND_TXN.ROUTE + }, + { + id: "settings", + icon: , + text: "Settings", + to: ROUTES.SETTINGS.ROUTE + } + ]; +} + +export {generateSidebarLinks}; diff --git a/src/component/pera-connect-banner/PeraConnectBanner.tsx b/src/component/pera-connect-banner/PeraConnectBanner.tsx new file mode 100644 index 0000000..5edc07c --- /dev/null +++ b/src/component/pera-connect-banner/PeraConnectBanner.tsx @@ -0,0 +1,43 @@ +import {ReactComponent as DAppIcon} from "../../core/ui/icons/dapp.svg"; + +import "./_pera-connect-banner.scss"; + +import classNames from "classnames"; + +import Image from "../image/Image"; + +interface PeraConnectBannerProps { + currentSession: AppSession | null; + customClassName?: string; +} + +function PeraConnectBanner({currentSession, customClassName}: PeraConnectBannerProps) { + return ( +
    + {currentSession ? ( + {currentSession?.title + ) : ( + + )} + +

    + {"We will take you back to "} + + + {currentSession?.title || "application"} + + + {" once you finish the process"} +

    +
    + ); +} + +export default PeraConnectBanner; diff --git a/src/component/pera-connect-banner/_pera-connect-banner.scss b/src/component/pera-connect-banner/_pera-connect-banner.scss new file mode 100644 index 0000000..2f128c2 --- /dev/null +++ b/src/component/pera-connect-banner/_pera-connect-banner.scss @@ -0,0 +1,39 @@ +.pera-connect-banner { + display: grid; + align-items: center; + justify-content: center; + grid-template-columns: 24px auto; + gap: 16px; + + width: 100%; + + padding: 20px 46px; + + color: var(--white); + background-color: var(--gray-800); + + text-align: center; + + animation: 0.3s slideAnimationForBanner ease-out; +} + +.pera-connect-banner__app-meta__favicon { + width: 24px; + height: 24px; + + object-fit: cover; + + overflow: hidden; + + border-radius: 100%; +} + +@keyframes slideAnimationForBanner { + 0% { + opacity: 0; + } + + 100% { + opacity: 1; + } +} diff --git a/src/component/pera-password-input/PeraPasswordInput.tsx b/src/component/pera-password-input/PeraPasswordInput.tsx new file mode 100644 index 0000000..b458ea0 --- /dev/null +++ b/src/component/pera-password-input/PeraPasswordInput.tsx @@ -0,0 +1,61 @@ +import {Button, Input, PasswordInputProps} from "@hipo/react-ui-toolkit"; +import classNames from "classnames"; +import {useState} from "react"; + +import "./_pera-password-input.scss"; + +export interface PeraPasswordInputProps extends Omit { + infoIcon?: React.ReactNode; +} + +function PeraPasswordInput({ + customClassName, + hideIcon, + revealIcon, + infoIcon, + ...rest +}: PeraPasswordInputProps) { + const [isPasswordShown, setPasswordVisibility] = useState(false); + const peraPasswordInputClassName = classNames("pera-password-input", customClassName); + let iconAriaLabel = "Show password"; + let icon = revealIcon; + let inputType: "password" | "text" = "password"; + + if (isPasswordShown) { + iconAriaLabel = "Hide password"; + icon = hideIcon; + inputType = "text"; + } + + return ( + + <> + {infoIcon && ( + {infoIcon} + )} + {icon} + + + ) + } + {...rest} + /> + ); + + function togglePasswordVisibility() { + setPasswordVisibility(!isPasswordShown); + } +} + +export default PeraPasswordInput; diff --git a/src/component/pera-password-input/_pera-password-input.scss b/src/component/pera-password-input/_pera-password-input.scss new file mode 100644 index 0000000..cb7ed38 --- /dev/null +++ b/src/component/pera-password-input/_pera-password-input.scss @@ -0,0 +1,70 @@ +.pera-password-input { + position: relative; + + height: 24px; + + .input-container__icon { + width: auto; + height: auto; + } + + .input { + margin-right: 40px; + } +} + +.pera-password-input__icon { + --button-height: 24px; + + position: relative; + + display: flex; + align-items: center; + justify-content: center; + + padding: 0; + + background: white; + border-radius: 0; + + &:active { + box-shadow: none; + } +} + +.pera-password-input__info-icon { + position: absolute; + left: -32px; + + width: 20px; + height: 20px; + + margin: 0; + + pointer-events: none; + + .warning-icon { + path { + fill: var(--helper-red-default); + } + } + + .check-mark-icon { + path { + fill: var(--helper-green-default); + } + } +} + +.pera-password-input__visibility-icon { + display: flex; + align-items: center; + justify-content: center; + + width: 20px; + height: 20px; + + &:active { + box-shadow: none; + } +} diff --git a/src/component/pera-qr-code/PeraQRCode.tsx b/src/component/pera-qr-code/PeraQRCode.tsx new file mode 100644 index 0000000..974b45b --- /dev/null +++ b/src/component/pera-qr-code/PeraQRCode.tsx @@ -0,0 +1,35 @@ +/* eslint-disable no-magic-numbers */ +import PeraQRLogo from "../../core/ui/image/pera-qr-logo.png"; + +import {QRCode} from "react-qrcode-logo"; + +function PeraQRCode({value}: {value: string}) { + return ( + + ); +} + +export default PeraQRCode; +/* eslint-enable no-magic-numbers */ diff --git a/src/component/pera-toast/PeraToast.tsx b/src/component/pera-toast/PeraToast.tsx new file mode 100644 index 0000000..4265aa6 --- /dev/null +++ b/src/component/pera-toast/PeraToast.tsx @@ -0,0 +1,93 @@ +import {ReactComponent as CloseIcon} from "../../core/ui/icons/close.svg"; +import {ReactComponent as KeyIcon} from "../../core/ui/icons/key.svg"; +import {ReactComponent as InfoIcon} from "../../core/ui/icons/info.svg"; + +import "./_pera-toast.scss"; + +import {Toast} from "@hipo/react-ui-toolkit"; +import classNames from "classnames"; +import {Fragment} from "react"; + +export interface PeraToastProps { + title: string; + detail: string; + customClassName?: string; + type?: "success" | "error" | "warning" | "info"; + hasCloseButton?: boolean; + learnMoreLink?: string; +} + +function PeraToast({ + title, + detail, + type = "info", + learnMoreLink, + customClassName, + hasCloseButton = true +}: PeraToastProps) { + const peraToastClassNames = classNames( + "pera-toast", + `pera-toast--${type}`, + "pera-toast--animation", + customClassName, + {"pera-toast--small": !hasCloseButton} + ); + + return ( +
    + {renderIcon()} + +
    +

    {title}

    + +

    + {detail} +

    + + {learnMoreLink && ( + + {"Learn more →"} + + )} +
    + + {hasCloseButton && ( + + + + )} +
    + ); + + function renderIcon() { + let icon = ; + + if (type === "info") { + icon = ; + } else if (type === "warning") { + icon = ; + } + + return ( +
    + {icon} +
    + ); + } +} + +export default PeraToast; diff --git a/src/component/pera-toast/_pera-toast.scss b/src/component/pera-toast/_pera-toast.scss new file mode 100644 index 0000000..ec5c6d7 --- /dev/null +++ b/src/component/pera-toast/_pera-toast.scss @@ -0,0 +1,108 @@ +.toast-stack { + width: 404px; + + padding: 32px; +} + +.pera-toast { + display: flex; + justify-content: space-between; + gap: 12px; + + width: 340px; + + margin-top: 4px; + padding: 16px 20px; + + background-color: var(--card-default); + border-radius: 16px; + box-shadow: var(--shadow-xxlarge); + + &--small { + width: 300px; + + margin-left: auto; + } +} + +.pera-toast--animation { + opacity: 0; + + transform: scale(0.97) translate(16px, 16px); + + animation: PeraToastAnimation 0.2s ease-out forwards; +} + +@keyframes PeraToastAnimation { + 100% { + opacity: 1; + + transform: scale(1) translate(0, 0); + } +} + +.pera-toast__title { + margin: 2px 0 4px; +} + +.pera-toast--warning { + .pera-toast__title { + color: var(--helper-red-darker); + } +} + +.pera-toast--info { + .pera-toast__title { + color: var(--helper-orange-darker); + } +} + +.pera-toast__learn-more { + display: block; + + margin-top: 12px; +} + +.pera-toast__icon-wrapper { + width: 28px; + height: 28px; + + padding: 6px; + + border-radius: 50%; +} + +.pera-toast__icon-wrapper--info { + background-color: var(--helper-orange-lighter); + + .key-icon { + path { + fill: var(--helper-orange-darker); + } + } +} + +.pera-toast__icon-wrapper--warning { + background-color: var(--helper-red-lighter); + + .info-icon { + path { + fill: var(--helper-red-darker); + } + } +} + +.toast-close-button { + width: 24px; + height: 24px; + + padding: unset; + + background-color: transparent; + + .close-icon { + path { + fill: var(--text-gray-lightest); + } + } +} diff --git a/src/component/simple-toast/SimpleToast.tsx b/src/component/simple-toast/SimpleToast.tsx new file mode 100644 index 0000000..7ff8404 --- /dev/null +++ b/src/component/simple-toast/SimpleToast.tsx @@ -0,0 +1,66 @@ +import {ReactComponent as TickCircleIcon} from "../../core/ui/icons/tick-circle.svg"; +import {ReactComponent as DangerIcon} from "../../core/ui/icons/danger.svg"; + +import {Fragment, useLayoutEffect} from "react"; +import ReactDOM from "react-dom"; +import classNames from "classnames"; + +import "./_simple-toast.scss"; + +import {SimpleToastContextState} from "./util/simpleToastTypes"; +import {SimpleToastItemContext} from "./SimpleToastItemContext"; +import {useSimpleToaster, useSimpleToastContextState} from "./util/simpleToastHooks"; + +export interface SimpleToastProps { + data: SimpleToastContextState["toast"]; +} + +function SimpleToast({data}: SimpleToastProps) { + const contextState = useSimpleToastContextState(); + const {hide} = useSimpleToaster(); + + useLayoutEffect(() => { + const timeoutId = setTimeout(() => { + hide(); + }, contextState.defaultAutoCloseTimeout); + + return () => { + if (timeoutId) { + clearTimeout(timeoutId); + } + }; + }, [contextState.defaultAutoCloseTimeout, hide, contextState.toast?.id]); + + return ReactDOM.createPortal( + contextState.toast ? ( + +
    + {renderIcon()} +

    {data?.message}

    +
    +
    + ) : ( + + ), + document.querySelector("#simple-toast-root")! + ); + + function renderIcon() { + let icon; + + if (data?.type === "success") { + icon = ; + } else if (data?.type === "error") { + icon = ; + } + + return icon; + } +} + +export default SimpleToast; diff --git a/src/component/simple-toast/SimpleToastItemContext.tsx b/src/component/simple-toast/SimpleToastItemContext.tsx new file mode 100644 index 0000000..942e890 --- /dev/null +++ b/src/component/simple-toast/SimpleToastItemContext.tsx @@ -0,0 +1,11 @@ +import {createContext} from "react"; + +const SimpleToastItemContext = createContext<{ + toastId: string; +}>({ + toastId: "" +}); + +SimpleToastItemContext.displayName = "SimpleToastItemContext"; + +export {SimpleToastItemContext}; diff --git a/src/component/simple-toast/SimpleToastProvider.tsx b/src/component/simple-toast/SimpleToastProvider.tsx new file mode 100644 index 0000000..85cd240 --- /dev/null +++ b/src/component/simple-toast/SimpleToastProvider.tsx @@ -0,0 +1,55 @@ +import React, {createContext, useReducer, useEffect} from "react"; + +import SimpleToast from "./SimpleToast"; +import { + DEFAULT_SIMPLE_TOAST_TIMEOUT, + initialSimpleToastState +} from "./util/simpleToastConstants"; +import simpleToastReducer from "./util/simpleToastReducer"; +import {SimpleToastAction, SimpleToastContextState} from "./util/simpleToastTypes"; + +const SimpleToastStateContext = createContext(null); +const SimpleToastDispatchContext = + createContext>(null); + +SimpleToastDispatchContext.displayName = "ToastDispatchContext"; +SimpleToastStateContext.displayName = "ToastStateContext"; + +interface ToastContextProviderProps { + children: React.ReactNode; + defaultAutoCloseTimeout?: number; +} + +/** + * Wraps its children in a context provider + * these children can then use the useSimpleToast hook to show toast message + */ + +function SimpleToastContextProvider({ + children, + defaultAutoCloseTimeout = DEFAULT_SIMPLE_TOAST_TIMEOUT +}: ToastContextProviderProps) { + const [state, dispatch] = useReducer(simpleToastReducer, { + ...initialSimpleToastState, + defaultAutoCloseTimeout + }); + + useEffect(() => { + dispatch({ + type: "SET_DEFAULT_AUTO_CLOSE_TIMEOUT", + timeout: defaultAutoCloseTimeout + }); + }, [defaultAutoCloseTimeout]); + + return ( + + + {children} + + + + + ); +} + +export {SimpleToastDispatchContext, SimpleToastStateContext, SimpleToastContextProvider}; diff --git a/src/component/simple-toast/_simple-toast.scss b/src/component/simple-toast/_simple-toast.scss new file mode 100644 index 0000000..fe3497b --- /dev/null +++ b/src/component/simple-toast/_simple-toast.scss @@ -0,0 +1,67 @@ +#simple-toast-root { + position: fixed; + top: 32px; + left: 50%; + z-index: var(--simple-toast-z-index); + + z-index: 4; + + transform: translateX(-50%); +} + +.simple-toast { + position: relative; + bottom: 8px; + + display: flex; + align-items: center; + gap: 10px; + + padding: 10px 24px; + + color: var(--text-gray); + background-color: var(--card-default); + border-radius: 12px; + box-shadow: var(--shadow-large); + + animation: simpleToastFadeIn var(--default-animation) forwards, + simpleToastFadeOut var(--default-animation) 3.75s forwards; + + &--error { + color: var(--helper-red-default); + } + + .tick-circle-icon { + path { + fill: var(--helper-green-default); + } + } + + .danger-icon { + path { + fill: var(--helper-red-default); + } + } +} + +@keyframes simpleToastFadeIn { + from { + opacity: 0; + } + + to { + bottom: 0; + + opacity: 1; + } +} + +@keyframes simpleToastFadeOut { + from { + opacity: 1; + } + + to { + opacity: 0; + } +} diff --git a/src/component/simple-toast/util/simpleToastConstants.ts b/src/component/simple-toast/util/simpleToastConstants.ts new file mode 100644 index 0000000..792df6f --- /dev/null +++ b/src/component/simple-toast/util/simpleToastConstants.ts @@ -0,0 +1,10 @@ +import {SimpleToastContextState} from "./simpleToastTypes"; + +const DEFAULT_SIMPLE_TOAST_TIMEOUT = 4000; + +const initialSimpleToastState: SimpleToastContextState = { + toast: null, + defaultAutoCloseTimeout: DEFAULT_SIMPLE_TOAST_TIMEOUT +}; + +export {DEFAULT_SIMPLE_TOAST_TIMEOUT, initialSimpleToastState}; diff --git a/src/component/simple-toast/util/simpleToastHooks.ts b/src/component/simple-toast/util/simpleToastHooks.ts new file mode 100644 index 0000000..1adff9c --- /dev/null +++ b/src/component/simple-toast/util/simpleToastHooks.ts @@ -0,0 +1,73 @@ +import {useContext, useCallback} from "react"; + +import {generateRandomString} from "../../../core/util/string/stringUtils"; +import {SimpleToastItemContext} from "../SimpleToastItemContext"; +import { + SimpleToastDispatchContext, + SimpleToastStateContext +} from "../SimpleToastProvider"; +import {SimpleToastContextState, SimpleToastData} from "./simpleToastTypes"; + +/** + * @returns {Object} Current value of SimpleToastContextState + */ +function useSimpleToastContextState(): SimpleToastContextState { + const state = useContext(SimpleToastStateContext); + + if (!state) { + throw new Error("Trying to consume ToastStateContext outside of its provider."); + } + + return state; +} + +function useSimpleToaster() { + const dispatch = useContext(SimpleToastDispatchContext); + + if (!dispatch) { + throw new Error("Trying to consume ToastDispatchContext outside of its provider"); + } + + return { + /** + * Display a Toast + * @returns {string} Toast's id + */ + display: useCallback( + (toastData: SimpleToastData) => { + const toastId = toastData.id || generateRandomString(); + + dispatch({ + type: "DISPLAY", + toastData: { + ...toastData, + id: toastId + } + }); + + return toastId; + }, + [dispatch] + ), + /** + * Hide a Toast + */ + hide: useCallback(() => { + dispatch({ + type: "HIDE" + }); + }, [dispatch]) + }; +} + +function useToastItemContext() { + const toastItemContext = useContext(SimpleToastItemContext); + + if (!toastItemContext) { + throw new Error("Trying to consume ToastItemContext outside of its provider"); + } + + return toastItemContext; +} + +export {useSimpleToastContextState, useSimpleToaster, useToastItemContext}; diff --git a/src/component/simple-toast/util/simpleToastReducer.ts b/src/component/simple-toast/util/simpleToastReducer.ts new file mode 100644 index 0000000..5d27123 --- /dev/null +++ b/src/component/simple-toast/util/simpleToastReducer.ts @@ -0,0 +1,44 @@ +import {initialSimpleToastState} from "./simpleToastConstants"; +import {SimpleToastAction} from "./simpleToastTypes"; + +type SimpleToastState = typeof initialSimpleToastState; + +function simpleToastReducer( + state: SimpleToastState, + action: SimpleToastAction +): SimpleToastState { + let newState = state; + + switch (action.type) { + case "DISPLAY": { + newState = { + ...state, + toast: action.toastData + }; + break; + } + + case "HIDE": { + newState = { + ...state, + toast: null + }; + break; + } + + case "SET_DEFAULT_AUTO_CLOSE_TIMEOUT": { + newState = { + ...state, + defaultAutoCloseTimeout: action.timeout + }; + break; + } + + default: + break; + } + + return newState; +} + +export default simpleToastReducer; diff --git a/src/component/simple-toast/util/simpleToastTypes.ts b/src/component/simple-toast/util/simpleToastTypes.ts new file mode 100644 index 0000000..07e9af0 --- /dev/null +++ b/src/component/simple-toast/util/simpleToastTypes.ts @@ -0,0 +1,23 @@ +export interface SimpleToastData { + message: string; + type?: "info" | "success" | "error"; + id?: string; + timeout?: number; + customClassName?: string; +} + +export type SimpleToastAction = + | { + type: "DISPLAY"; + toastData: Omit & {id: string}; + } + | {type: "HIDE"} + | { + type: "SET_DEFAULT_AUTO_CLOSE_TIMEOUT"; + timeout: number; + }; + +export interface SimpleToastContextState { + toast: (Omit & {id: string}) | null; + defaultAutoCloseTimeout: number; +} diff --git a/src/component/tooltip/Tooltip.tsx b/src/component/tooltip/Tooltip.tsx new file mode 100644 index 0000000..e3806dc --- /dev/null +++ b/src/component/tooltip/Tooltip.tsx @@ -0,0 +1,44 @@ +import "./_tooltip.scss"; + +import classNames from "classnames"; +import ReactTooltip, {TooltipProps as ReactTooltipProps} from "react-tooltip"; + +export interface TooltipProps { + content: React.ReactNode; + children: React.ReactNode; + dataFor: string; + placement?: ReactTooltipProps["place"]; + customClassName?: string; +} + +function Tooltip({content, children, dataFor, placement, customClassName}: TooltipProps) { + return ( +
    +
    + {children} +
    + + +
    {content}
    +
    +
    + ); +} + +function OptionalTooltip(props: {withinTooltip: boolean} & TooltipProps) { + const {withinTooltip, children, ...tooltipProps} = props; + + if (withinTooltip) { + return {children}; + } + + return <>{children}; +} + +Tooltip.Optional = OptionalTooltip; + +export default Tooltip; diff --git a/src/component/tooltip/_tooltip.scss b/src/component/tooltip/_tooltip.scss new file mode 100644 index 0000000..b87da30 --- /dev/null +++ b/src/component/tooltip/_tooltip.scss @@ -0,0 +1,23 @@ +.tooltip { + &.__react_component_tooltip { + width: auto; + max-width: 360px; + + padding: 10px 20px; + + background: var(--text-main); + border: none; + border-radius: 12px; + + &.place-top { + &:before, + &:after { + border-top-color: var(--text-main); + } + } + } +} + +.tooltip-content { + color: var(--primary-button-text); +} diff --git a/src/connect/context/ConnectFlowContext.tsx b/src/connect/context/ConnectFlowContext.tsx new file mode 100644 index 0000000..444a81f --- /dev/null +++ b/src/connect/context/ConnectFlowContext.tsx @@ -0,0 +1,101 @@ +import algosdk from "algosdk"; +import {createContext, useContext, useEffect} from "react"; + +import {useAppContext} from "../../core/app/AppContext"; +import useFormito from "../../core/util/hook/formito/useFormito"; +import {PortfolioOverview} from "../../overview/util/hook/usePortfolioOverview"; + +export type ConnectFlowViews = "add-account" | "select-account" | "password-access"; +export type ConnectFlowAddImportAccountView = + | "default" + | "create" + | "recovery-passphrase" + | "import-from-mobile"; +export type ConnectFlowAccountCreateViews = "create" | "animation" | "success"; +export type ConnectFlowImportAccountViews = + | "prepare" + | "recovery" + | "name" + | "animation" + | "success"; +export type ConnectFlowImportAccountFromMobileViews = "prepare" | "qr" | "success"; + +export type ConnectFlowState = { + hasMessageReceived: boolean; + isConnectStarted: boolean; + currentSession: AppSession | null; + selectedAccounts: AppDBAccount[] | null; + connectFlowView: ConnectFlowViews; + connectFlowAddImportAccountView: ConnectFlowAddImportAccountView; + createAccountViews: ConnectFlowAccountCreateViews; + importAccountViews: ConnectFlowImportAccountViews; + importedAccountInFlow: algosdk.Account | null; + importAccountFromMobileViews: ConnectFlowImportAccountFromMobileViews; + accountBackup: {modificationKey?: string; backupId?: string} | null; + importedAccountsFromMobile: PortfolioOverview["accounts"]; +}; + +export const initialConnectFlowState = { + hasMessageReceived: false, + isConnectStarted: false, + currentSession: null as AppSession | null, + selectedAccounts: null as AppDBAccount[] | null, + connectFlowView: "password-access" as ConnectFlowViews, + connectFlowAddImportAccountView: "default" as ConnectFlowAddImportAccountView, + createAccountViews: "create" as ConnectFlowAccountCreateViews, + importAccountViews: "prepare" as ConnectFlowImportAccountViews, + importedAccountInFlow: null as algosdk.Account | null, + importAccountFromMobileViews: "prepare" as ConnectFlowImportAccountFromMobileViews, + accountBackup: null as {modificationKey?: string; backupId?: string} | null, + importedAccountsFromMobile: [] +}; + +const ConnectFlowContext = createContext( + {} as ReturnType> +); + +function ConnectFlowContextProvider({children}: {children: React.ReactNode}) { + const { + state: {hashedMasterkey, masterkey, hasAccounts} + } = useAppContext(); + const {formitoState, dispatchFormitoAction} = useFormito( + getInitialConnectFlowState(hashedMasterkey) + ); + + useEffect(() => { + if (!masterkey && hasAccounts) { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + connectFlowView: "password-access" as ConnectFlowViews + } + }); + } + }, [dispatchFormitoAction, hasAccounts, masterkey]); + + return ( + + {children} + + ); +} + +function useConnectFlowContext() { + return useContext(ConnectFlowContext); +} + +function getInitialConnectFlowState( + hashedMasterkey: string | undefined +): ConnectFlowState { + let connectFlowView: ConnectFlowViews = "password-access"; + + if (!hashedMasterkey) connectFlowView = "add-account"; + + return { + ...initialConnectFlowState, + connectFlowView + }; +} + +export default ConnectFlowContextProvider; +export {useConnectFlowContext}; diff --git a/src/connect/flow/ConnectFlow.tsx b/src/connect/flow/ConnectFlow.tsx new file mode 100644 index 0000000..8d4f6c0 --- /dev/null +++ b/src/connect/flow/ConnectFlow.tsx @@ -0,0 +1,43 @@ +import classNames from "classnames"; +import {Route, Routes, useSearchParams} from "react-router-dom"; + +import Page from "../../component/page/Page"; +import PeraConnectBanner from "../../component/pera-connect-banner/PeraConnectBanner"; +import {useConnectFlowContext} from "../context/ConnectFlowContext"; +import ConnectPageEmbeddedView from "../view/embedded/ConnectPageEmbeddedView"; +import ConnectPageTabView from "../view/tab/ConnectPageTabView"; + +function ConnectFlow() { + const [searchParams] = useSearchParams(); + const {formitoState} = useConnectFlowContext(); + const isEmbedded = Boolean(searchParams.get("embedded")); + + return ( + + + {!isEmbedded && ( + + )} + + } + /> + }> + : } + /> + + + ); +} + +export default ConnectFlow; diff --git a/src/connect/select-account/ConnectPageSelectAccount.tsx b/src/connect/select-account/ConnectPageSelectAccount.tsx new file mode 100644 index 0000000..34f2b4e --- /dev/null +++ b/src/connect/select-account/ConnectPageSelectAccount.tsx @@ -0,0 +1,219 @@ +import "./_connect-page-select-account.scss"; + +import {useEffect} from "react"; +import classNames from "classnames"; +import {useToaster} from "@hipo/react-ui-toolkit"; + +import Button from "../../component/button/Button"; +import Image from "../../component/image/Image"; +import {useAppContext} from "../../core/app/AppContext"; +import {useConnectFlowContext} from "../context/ConnectFlowContext"; +import PeraLoader from "../../component/loader/pera/PeraLoader"; +import {getChainIdForNetwork} from "../../core/util/algod/algodUtils"; +import PeraToast from "../../component/pera-toast/PeraToast"; +import {NETWORK_MISMATCH_MESSAGE} from "../../core/util/algod/algodConstants"; +import ConnectPageAccountList from "./account-list/ConnectPageAccountList"; + +interface ConnectPageSelectAccountProps { + handleConnectClick: VoidFunction; + sendNetworkMismacthError: VoidFunction; + shouldShowToast?: boolean; +} + +function ConnectPageSelectAccount({ + handleConnectClick, + sendNetworkMismacthError, + shouldShowToast = false +}: ConnectPageSelectAccountProps) { + const { + state: {accounts, preferredNetwork} + } = useAppContext(); + const { + formitoState: { + currentSession, + hasMessageReceived, + selectedAccounts, + isConnectStarted + }, + dispatchFormitoAction + } = useConnectFlowContext(); + const accountsArray = Object.values(accounts); + const accountCount = accountsArray.length || 0; + const hasNetworkMismatch = Boolean( + currentSession?.chainId && + currentSession.chainId !== getChainIdForNetwork(preferredNetwork) + ); + + const toaster = useToaster(); + + useEffect(() => { + if (hasNetworkMismatch) { + sendNetworkMismacthError(); + + if (shouldShowToast) { + toaster.display({ + render() { + return ( + + ); + } + }); + } + } + }, [hasNetworkMismatch, sendNetworkMismacthError, toaster, shouldShowToast]); + + useEffect(() => { + if (currentSession && accountCount === 1 && !isConnectStarted) { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + selectedAccounts: accountsArray + } + }); + } + }, [ + currentSession, + accountsArray, + dispatchFormitoAction, + isConnectStarted, + accountCount + ]); + + useEffect(() => { + if ( + accountCount === 1 && + selectedAccounts?.length === accountCount && + !isConnectStarted + ) { + handleConnectClick(); + } + }, [accountCount, selectedAccounts, handleConnectClick, isConnectStarted]); + + if (hasMessageReceived && currentSession && accountCount > 1) { + return ( +
    +
    +
    + {currentSession?.title} + +

    + {currentSession?.title} + + {" wants to connect to your account"} + +

    + + + {currentSession?.url} + +
    + +
    +
    + {`Select Account (${accountCount})`} +
    + + +
    + + +
    + +
    = 2 + })}> + +
    +
    + ); + } + + return ( +
    + + + {!currentSession && ( +

    + {"Establishing connection..."} +

    + )} + + {currentSession && accountCount === 1 && ( +

    + {`Connecting you to ${currentSession.title}...`} +

    + )} +
    + ); + + function handleSelectAllAccounts() { + if (selectedAccounts?.length === accountCount) { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + selectedAccounts: [] + } + }); + } else { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + selectedAccounts: accountsArray + } + }); + } + } +} + +export default ConnectPageSelectAccount; diff --git a/src/connect/select-account/_connect-page-select-account.scss b/src/connect/select-account/_connect-page-select-account.scss new file mode 100644 index 0000000..c726c15 --- /dev/null +++ b/src/connect/select-account/_connect-page-select-account.scss @@ -0,0 +1,85 @@ +.connect-page-select-account__content { + display: flex; + flex-direction: column; + justify-content: space-between; + + width: 100%; + height: 578px; +} + +.connect-page-select-account__app-information { + height: calc(100% - 97px); + + overflow: auto; + + padding: 40px 28px 28px; +} + +.connect-page-select-account__app-meta { + display: flex; + flex-direction: column; + align-items: center; + + text-align: center; +} + +.connect-page-select-account__app-meta__favicon { + width: 80px; + height: 80px; + + object-fit: cover; + + overflow: hidden; + + border-radius: 100%; +} + +.connect-page-select-account__app-meta__url { + margin-bottom: 40px; + + color: var(--secondary-button-text); +} + +.connect-page-select-account__app-meta__title { + margin: 16px 0 4px; +} + +.connect-page-select-account__select-account-text-wrapper { + margin-bottom: 12px; +} + +.connect-page-select-account__select-all-button.button { + height: unset; + + padding: 0; +} + +.connect-page-select-account__spinner-wrapper { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + gap: 24px; + + width: 100%; + height: 100%; + + text-align: center; +} + +.connect-page-select-account__please-wait-text { + max-width: 328px; +} + +.connect-page-select-account__connect-button-wrapper { + padding: 28px; + + &--border { + border-top: 1px solid var(--gray-200); + } +} + +.connect-page-select-account__connect-button { + width: 100%; + height: 48px; +} diff --git a/src/connect/select-account/account-list/ConnectPageAccountList.tsx b/src/connect/select-account/account-list/ConnectPageAccountList.tsx new file mode 100644 index 0000000..76f989a --- /dev/null +++ b/src/connect/select-account/account-list/ConnectPageAccountList.tsx @@ -0,0 +1,127 @@ +import {ReactComponent as CheckboxIcon} from "../../../core/ui/icons/checkbox.svg"; + +import "./_connect-page-account-list.scss"; + +import {List, ListItem} from "@hipo/react-ui-toolkit"; +import classNames from "classnames"; + +import { + getAccountIcon, + trimAccountAddress, + trimAccountName +} from "../../../account/util/accountUtils"; +import {useConnectFlowContext} from "../../context/ConnectFlowContext"; +import {useAppContext} from "../../../core/app/AppContext"; +import {filterOutItemsByKey} from "../../../core/util/array/arrayUtils"; +import {usePortfolioContext} from "../../../overview/context/PortfolioOverviewContext"; +import {ALGO_UNIT} from "../../../core/ui/typography/typographyConstants"; +import {defaultPriceFormatter} from "../../../core/util/number/numberUtils"; + +function ConnectPageAccountList() { + const { + state: {accounts} + } = useAppContext(); + const accountsArray = Object.values(accounts); + const { + formitoState: {selectedAccounts}, + dispatchFormitoAction + } = useConnectFlowContext(); + const listClassName = classNames("connect-page-account-list", { + "connect-page-account-list--is-selectable": !!onSelectAccount + }); + const portfolioOverview = usePortfolioContext(); + const {algoFormatter} = defaultPriceFormatter(); + + return ( + + {(account) => ( + selectedAccount.address === account.address + ) + })}> +
    + {getAccountIcon({type: account.type, width: 32, height: 32})} +
    + +
    +
    + {account.name && ( +
    + {trimAccountName(account.name)} +
    + )} + +
    + {trimAccountAddress(account.address)} +
    +
    + +
    + + {`${ALGO_UNIT}${algoFormatter( + Number( + portfolioOverview?.accounts.find( + (portfolioAccount) => portfolioAccount.address === account.address + )?.total_algo_value || 0 + ), + { + maximumFractionDigits: 2 + } + )}`} + + +
    + +
    +
    +
    +
    + )} +
    + ); + + function onSelectAccount(item: AppDBAccount) { + const foundAlreadySelectedAccount = selectedAccounts?.find( + (account) => account.address === item.address + ); + let newSelectedAccounts: AppDBAccount[] = []; + + if (foundAlreadySelectedAccount) { + newSelectedAccounts = filterOutItemsByKey( + { + items: [foundAlreadySelectedAccount], + key: "address" + }, + selectedAccounts || [] + ); + } else { + newSelectedAccounts = [...(selectedAccounts || []), item]; + } + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + selectedAccounts: newSelectedAccounts + } + }); + } + + function handleSelectAccount(account: AppDBAccount) { + return () => onSelectAccount!(account); + } +} + +export default ConnectPageAccountList; diff --git a/src/connect/select-account/account-list/_connect-page-account-list.scss b/src/connect/select-account/account-list/_connect-page-account-list.scss new file mode 100644 index 0000000..4a34d2c --- /dev/null +++ b/src/connect/select-account/account-list/_connect-page-account-list.scss @@ -0,0 +1,60 @@ +.connect-page-account-list { + &:not(.connect-page-account-list--is-selectable) .connect-page-account-list__item, + .list-item__click-wrapper { + display: grid; + align-items: center; + grid-template-columns: 35px 1fr; + + gap: 16px; + + min-height: 72px; + + padding: 13px 16px; + } +} + +.connect-page-account-list__item { + background-color: var(--card-default); + border-radius: 16px; + box-shadow: var(--shadow-small); + + &:not(:last-of-type) { + margin-bottom: 12px; + } +} + +.connect-page-account-list__item--is-selected { + background: var(--grey-10); + + .connect-page-account-list__item__check-icon-wrapper { + background-color: var(--purple-500); + + border: none; + + .checkbox-icon { + display: block; + } + } +} + +.connect-page-account-list__item__name { + margin-bottom: 2px; +} + +.connect-page-account-list__item__algo-amount-wrapper { + display: flex; + align-items: center; + gap: 12px; +} + +.connect-page-account-list__item__check-icon-wrapper { + width: 20px; + height: 20px; + + border: 2px solid var(--gray-400); + border-radius: 6px; + + .checkbox-icon { + display: none; + } +} diff --git a/src/connect/view/embedded/ConnectPageEmbeddedView.tsx b/src/connect/view/embedded/ConnectPageEmbeddedView.tsx new file mode 100644 index 0000000..5e21aae --- /dev/null +++ b/src/connect/view/embedded/ConnectPageEmbeddedView.tsx @@ -0,0 +1,151 @@ +import "./_connect-page-embedded-view.scss"; + +import {useCallback, useEffect, useState} from "react"; + +import appTellerManager, {PeraTeller} from "../../../core/app/teller/appTellerManager"; +import {useAppContext} from "../../../core/app/AppContext"; +import useTellerListener from "../../../core/util/hook/useTellerListener"; +import PasswordAccessPage from "../../../password/page/access/PasswordAccessPage"; +import ConnectPageSelectAccount from "../../select-account/ConnectPageSelectAccount"; +import {useConnectFlowContext} from "../../context/ConnectFlowContext"; +import {NETWORK_MISMATCH_MESSAGE} from "../../../core/util/algod/algodConstants"; +import ConnectPageEmbeddedViewAddImportAccount from "./add-import-account/ConnectPageEmbeddedViewAddImportAccount"; +import {appDBManager} from "../../../core/app/db"; + +export type ConnectPageEmbeddedViewPasswordCreateViews = "default" | "spinner"; + +function ConnectPageEmbeddedView() { + const { + state: {masterkey, hashedMasterkey, preferredNetwork, hasAccounts}, + dispatch: dispatchAppState + } = useAppContext(); + const { + formitoState: {selectedAccounts, currentSession}, + dispatchFormitoAction + } = useConnectFlowContext(); + const [connectFlowEmbeddedView, setConnectFlowEmbeddedView] = + useState("default"); + + useEffect(() => { + if (masterkey) { + appTellerManager.sendMessage({ + message: { + type: "SELECT_ACCOUNT_EMBEDDED" + }, + + targetWindow: window.parent + }); + } + }, [masterkey]); + + // Receive "CONNECT" request from dApp + const onReceiveMessage = useCallback( + (event: MessageEvent>) => { + if (event.data.message.type === "CONNECT") { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + currentSession: event.data.message.data + } + }); + } else if (event.data.message.type === "SELECT_ACCOUNT_EMBEDDED_CALLBACK") { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + hasMessageReceived: true + } + }); + } + }, + [dispatchFormitoAction] + ); + + useTellerListener(onReceiveMessage); + + return ( +
    +
    {renderContent()}
    +
    + ); + + function renderContent() { + if (!hashedMasterkey || !hasAccounts) { + return ( + + ); + } + if (!masterkey) { + return ; + } + + return ( + + ); + } + + async function handleConnectClick() { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + isConnectStarted: true + } + }); + + if (selectedAccounts) { + const selectedAddresses = selectedAccounts?.map((account) => account.address); + const session = { + ...currentSession!, + accountAddresses: selectedAddresses || [], + date: new Date(), + network: preferredNetwork + } as AppDBSession; + + await appDBManager.set("sessions", masterkey!)(currentSession!.url, session); + + dispatchAppState({type: "SET_SESSION", session}); + + appTellerManager.sendMessage({ + message: { + type: "CONNECT_CALLBACK", + data: { + addresses: selectedAddresses || [] + } + }, + + targetWindow: window.parent + }); + } + } + + function handleChangeView() { + if (connectFlowEmbeddedView === "default") { + appTellerManager.sendMessage({ + message: { + type: "CREATE_PASSCODE_EMBEDDED" + }, + + targetWindow: window.parent + }); + setConnectFlowEmbeddedView("spinner"); + } + } + + function sendNetworkMismatchError() { + appTellerManager.sendMessage({ + message: { + type: "CONNECT_NETWORK_MISMATCH", + error: NETWORK_MISMATCH_MESSAGE + }, + + targetWindow: window.parent + }); + } +} + +export default ConnectPageEmbeddedView; diff --git a/src/connect/view/embedded/_connect-page-embedded-view.scss b/src/connect/view/embedded/_connect-page-embedded-view.scss new file mode 100644 index 0000000..74ac850 --- /dev/null +++ b/src/connect/view/embedded/_connect-page-embedded-view.scss @@ -0,0 +1,28 @@ +.connect-page-embedded-view__select-account-content { + display: flex; + flex-direction: column; + justify-content: space-between; + + height: 100%; +} + +.connect-page-embedded-view__select-account-content__app-information { + height: calc(100% - 69px); + + overflow: auto; + + padding: 44px 28px 28px; +} + +.connect-page-embedded-view__box { + position: absolute; + top: 50%; + left: 50%; + + width: 100%; + height: 100%; + + background: var(--card-default); + + transform: translate(-50%, -50%); +} diff --git a/src/connect/view/embedded/add-import-account/ConnectPageEmbeddedViewAddImportAccount.tsx b/src/connect/view/embedded/add-import-account/ConnectPageEmbeddedViewAddImportAccount.tsx new file mode 100644 index 0000000..37fa155 --- /dev/null +++ b/src/connect/view/embedded/add-import-account/ConnectPageEmbeddedViewAddImportAccount.tsx @@ -0,0 +1,69 @@ +import {ReactComponent as PeraWebIcon} from "../../../../core/ui/icons/pera-web.svg"; +import {ReactComponent as ChevronRightIcon} from "../../../../core/ui/icons/chevron-right.svg"; + +import "./_connect-page-embedded-view-add-import-account.scss"; + +import classNames from "classnames"; + +import Button from "../../../../component/button/Button"; +import PeraLoader from "../../../../component/loader/pera/PeraLoader"; +import {useAppContext} from "../../../../core/app/AppContext"; +import {ConnectPageEmbeddedViewPasswordCreateViews} from "../ConnectPageEmbeddedView"; + +interface ConnectPageEmbeddedViewAddImportAccountProps { + view: ConnectPageEmbeddedViewPasswordCreateViews; + handleChangeView: VoidFunction; +} + +function ConnectPageEmbeddedViewAddImportAccount({ + view, + handleChangeView +}: ConnectPageEmbeddedViewAddImportAccountProps) { + const { + state: {hashedMasterkey, hasAccounts} + } = useAppContext(); + const userHasPasscodeButNoAccount = hashedMasterkey && !hasAccounts; + const description = userHasPasscodeButNoAccount + ? "You haven't added any Algorand accounts yet." + : "To start using Pera Wallet on your desktop, create or import an account."; + + if (view === "spinner") { + return ( +
    + +
    + ); + } + + return ( +
    +
    +
    + +
    + +

    + {description} +

    +
    + + +
    + ); +} + +export default ConnectPageEmbeddedViewAddImportAccount; diff --git a/src/connect/view/embedded/add-import-account/_connect-page-embedded-view-add-import-account.scss b/src/connect/view/embedded/add-import-account/_connect-page-embedded-view-add-import-account.scss new file mode 100644 index 0000000..c815771 --- /dev/null +++ b/src/connect/view/embedded/add-import-account/_connect-page-embedded-view-add-import-account.scss @@ -0,0 +1,73 @@ +.connect-page-embedded-view-add-import-account { + display: flex; + flex-direction: column; + justify-content: space-between; + + height: calc(100% - 40px); + + padding-top: 48px; +} + +.connect-page-embedded-view-add-import-account__icon-wrapper { + display: flex; + align-items: center; + justify-content: center; + + width: 72px; + height: 72px; + + margin: 0 auto 16px; + + background: var(--card-default); + + border-radius: 50%; + box-shadow: var(--shadow-large); +} + +.connect-page-embedded-view-add-import-account__description { + margin: 0 auto 32px; + + text-align: center; + + &--no-account { + max-width: 268px; + } +} + +.connect-page-embedded-view-add-import-account__button { + display: flex; + align-items: center; + justify-content: center; + gap: 8px; + + width: 100%; + + margin-bottom: 24px; + + .chevron-right-icon { + path { + fill: var(--card-default); + } + } +} + +.connect-page-embedded-view-add-import-account__import-account { + display: block; + + margin: 4px auto 0; + padding: 0; + + color: var(--helper-purple-default); + background-color: transparent; + + text-align: center; +} + +.connect-page-embedded-view-add-import-account__spinner-wrapper { + display: flex; + align-items: center; + justify-content: center; + + width: 100%; + height: 100%; +} diff --git a/src/connect/view/tab/ConnectPageTabView.tsx b/src/connect/view/tab/ConnectPageTabView.tsx new file mode 100644 index 0000000..c55ab4d --- /dev/null +++ b/src/connect/view/tab/ConnectPageTabView.tsx @@ -0,0 +1,155 @@ +import "./_connect-page-tab-view.scss"; + +import {useCallback} from "react"; +import classNames from "classnames"; + +import {useAppContext} from "../../../core/app/AppContext"; +import appTellerManager, {PeraTeller} from "../../../core/app/teller/appTellerManager"; +import useTellerListener from "../../../core/util/hook/useTellerListener"; +import ConnectPageSelectAccount from "../../select-account/ConnectPageSelectAccount"; +import {useConnectFlowContext} from "../../context/ConnectFlowContext"; +import {NETWORK_MISMATCH_MESSAGE} from "../../../core/util/algod/algodConstants"; +import ConnectPageTabViewAddImportAccount from "./add-import-account/ConnectPageTabViewAddImportAccount"; +import PasswordAccessPage from "../../../password/page/access/PasswordAccessPage"; +import {appDBManager} from "../../../core/app/db"; + +function ConnectPageTabView() { + const { + state: {preferredNetwork, hashedMasterkey, hasAccounts, masterkey}, + dispatch: dispatchAppState + } = useAppContext(); + const { + formitoState: {connectFlowView, selectedAccounts, currentSession}, + dispatchFormitoAction + } = useConnectFlowContext(); + + // Receive "CONNECT" request from dApp + const onReceiveMessage = useCallback( + (event: MessageEvent>) => { + if (event.data.message.type === "TAB_OPEN") { + appTellerManager.sendMessage({ + message: { + type: "TAB_OPEN_RECEIVED" + }, + + targetWindow: window.opener + }); + } + + if (event.data.message.type === "CONNECT") { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + hasMessageReceived: true, + currentSession: event.data.message.data + } + }); + } + }, + [dispatchFormitoAction] + ); + + useTellerListener(onReceiveMessage); + + return ( +
    +
    {renderContent()}
    +
    + ); + + function renderContent() { + if (connectFlowView === "add-account") { + return ; + } + + if (connectFlowView === "select-account") { + return ( + + ); + } + + return ; + } + + async function handleConnectClick() { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + isConnectStarted: true + } + }); + + // Delete the existing session if it exists + if (currentSession) { + appDBManager.delete("sessions")({ + key: currentSession.url, + encryptionKey: masterkey! + }); + } + + if (selectedAccounts) { + const selectedAddresses = selectedAccounts.map((account) => { + const accountAddress = account.address; + + return accountAddress; + }); + + const session = { + ...currentSession!, + accountAddresses: selectedAddresses || [], + date: new Date(), + network: preferredNetwork + } as AppDBSession; + + await appDBManager.set("sessions", masterkey!)(currentSession!.url, session); + + dispatchAppState({type: "SET_SESSION", session}); + + appTellerManager.sendMessage({ + message: { + type: "CONNECT_CALLBACK", + data: { + addresses: selectedAddresses || [] + } + }, + + targetWindow: window.opener + }); + } + } + + function handleChangeView() { + if (connectFlowView === "password-access") { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + connectFlowView: hasAccounts ? "select-account" : "add-account" + } + }); + } + } + + function sendNetworkMismatchError() { + setTimeout(() => { + appTellerManager.sendMessage({ + message: { + type: "CONNECT_NETWORK_MISMATCH", + error: NETWORK_MISMATCH_MESSAGE + }, + + targetWindow: window.opener + }); + + // eslint-disable-next-line no-magic-numbers + }, 3000); + } +} + +export default ConnectPageTabView; diff --git a/src/connect/view/tab/_connect-page-tab-view.scss b/src/connect/view/tab/_connect-page-tab-view.scss new file mode 100644 index 0000000..2298cfd --- /dev/null +++ b/src/connect/view/tab/_connect-page-tab-view.scss @@ -0,0 +1,122 @@ +.connect-page-tab-view { + display: flex; + flex-direction: column; + align-items: center; + gap: 24px; + + width: 480px; + height: fit-content; + + margin: 0 auto; + + &--add-import-account { + width: 100%; + + .connect-page-tab-view__content { + width: 100%; + + background-color: unset; + border-radius: 0; + box-shadow: unset; + } + } + + .connect-page-select-account__spinner-wrapper { + min-height: 615px; + } +} + +.connect-page-tab-view__content { + width: 100%; + + background-color: var(--card-default); + border-radius: 16px; + box-shadow: var(--shadow-small); +} + +.connect-page-tab-view__app-meta { + display: flex; + flex-direction: column; + align-items: center; + + padding-top: 16px; + + text-align: center; +} + +.connect-page-tab-view__app-meta__favicon { + width: 75px; + height: 75px; + + object-fit: cover; + + overflow: hidden; + + margin-bottom: 24px; + + border-radius: 100%; +} + +.connect-page-tab-view__app-meta__url { + color: var(--secondary-button-text); +} + +.connect-page-tab-view__app-meta__title { + max-width: 60%; + + margin-bottom: 16px; +} + +.connect-page-tab-view__select-account-text { + margin: 38px 0 12px; +} + +.connect-page-tab-view__spinner { + padding: 30px 0 0; +} + +.connect-page-tab-view__connect-button { + width: 100%; + + margin-top: 48px; +} + +.connect-page-tab-view-banner { + display: grid; + align-items: center; + grid-template-columns: 24px auto; + gap: 16px; + + width: 640px; + + margin-top: 90px; + padding: 14px 95px; + + color: var(--white); + background-color: var(--text-main); + + border-radius: 12px; + + animation: 0.3s slideAnimationForBanner ease-out; +} + +.connect-page-tab-view-banner__app-meta__favicon { + width: 24px; + height: 24px; + + object-fit: cover; + + overflow: hidden; + + border-radius: 100%; +} + +@keyframes slideAnimationForBanner { + 0% { + opacity: 0; + } + + 100% { + opacity: 1; + } +} diff --git a/src/connect/view/tab/add-import-account/ConnectPageTabViewAddImportAccount.tsx b/src/connect/view/tab/add-import-account/ConnectPageTabViewAddImportAccount.tsx new file mode 100644 index 0000000..138de7e --- /dev/null +++ b/src/connect/view/tab/add-import-account/ConnectPageTabViewAddImportAccount.tsx @@ -0,0 +1,68 @@ +import {ReactComponent as LedgerIcon} from "../../../../core/ui/icons/ledger.svg"; + +import "./_connect-page-tab-view-add-import-account.scss"; + +import ConnectPageOnboardingOptionList from "./onboarding-option-list/ConnectPageOnboardingOptionList"; +import {useAppContext} from "../../../../core/app/AppContext"; +import PasswordCreatePage from "../../../../password/page/create/PasswordCreatePage"; +import ConnectPageAccountCreate from "./account-create/ConnectPageAccountCreate"; +import ConnectPageImportAccount from "./import-account/ConnectPageImportAccount"; +import {useConnectFlowContext} from "../../../context/ConnectFlowContext"; +import ConnectPageImportAccountFromMobile from "./import-account-from-mobile/ConnectPageImportAccountFromMobile"; + +function ConnectPageTabViewAddImportAccount() { + const { + state: {hashedMasterkey} + } = useAppContext(); + const { + formitoState: {connectFlowAddImportAccountView} + } = useConnectFlowContext(); + + return renderContent(); + + function renderContent() { + if (!hashedMasterkey) { + return ; + } + + switch (connectFlowAddImportAccountView) { + case "create": + return ; + + case "recovery-passphrase": + return ; + + case "import-from-mobile": + return ; + + default: + return ( +
    +

    {"Add Account"}

    + + + +
    + + +

    + {"Pair Nano Ledger"} +

    + +
    + {"COMING SOON"} +
    +
    +
    + ); + } + } +} + +export default ConnectPageTabViewAddImportAccount; diff --git a/src/connect/view/tab/add-import-account/_connect-page-tab-view-add-import-account.scss b/src/connect/view/tab/add-import-account/_connect-page-tab-view-add-import-account.scss new file mode 100644 index 0000000..3ef5dfc --- /dev/null +++ b/src/connect/view/tab/add-import-account/_connect-page-tab-view-add-import-account.scss @@ -0,0 +1,38 @@ +.connect-page-tab-view-add-import-account__option-list { + margin: 80px 0 32px; +} + +.connect-page-tab-view-add-import-account__nano-ledger { + display: flex; + align-items: center; + justify-content: center; + + margin-left: auto; + padding: 16px; + + background-color: rgba(var(--gray-200-rgb), 0.5); + border-radius: 16px; + box-shadow: var(--shadow-disabled); + + cursor: not-allowed; + + .ledger-icon { + margin-right: 12px; + + path { + fill: var(--text-gray-light); + } + + circle { + fill: var(--text-gray-light); + } + } +} + +.connect-page-tab-view-add-import-account__nano-ledger__badge { + margin-left: 16px; + padding: 6px 12px; + + background-color: var(--white); + border-radius: 16px; +} diff --git a/src/connect/view/tab/add-import-account/account-create/ConnectPageAccountCreate.tsx b/src/connect/view/tab/add-import-account/account-create/ConnectPageAccountCreate.tsx new file mode 100644 index 0000000..8136ebf --- /dev/null +++ b/src/connect/view/tab/add-import-account/account-create/ConnectPageAccountCreate.tsx @@ -0,0 +1,29 @@ +import AccountCreationAnimation from "../../../../../account/component/account-creation-animation/AccountCreationAnimation"; +import AccountCreate from "../../../../../account/page/create/AccountCreate"; +import AccountSuccessPage from "../../../../../account/page/success/AccountSuccessPage"; +import CardLayoutWithoutRoute from "../../../../../layouts/card-layout-without-route/CardLayoutWithoutRoute"; +import {useConnectFlowContext} from "../../../../context/ConnectFlowContext"; + +export type ConnectPageAccountCreateViews = "create" | "animation" | "success"; + +function ConnectPageAccountCreate() { + const { + formitoState: {createAccountViews} + } = useConnectFlowContext(); + + if (createAccountViews === "success") { + return ; + } + + return ( + + {createAccountViews === "animation" ? ( + + ) : ( + + )} + + ); +} + +export default ConnectPageAccountCreate; diff --git a/src/connect/view/tab/add-import-account/import-account-from-mobile/ConnectPageImportAccountFromMobile.tsx b/src/connect/view/tab/add-import-account/import-account-from-mobile/ConnectPageImportAccountFromMobile.tsx new file mode 100644 index 0000000..774f954 --- /dev/null +++ b/src/connect/view/tab/add-import-account/import-account-from-mobile/ConnectPageImportAccountFromMobile.tsx @@ -0,0 +1,26 @@ +import AccountImportPeraSyncPrepare from "../../../../../account/page/import/pera-sync/prepare/AccountImportPeraSyncPrepare"; +import AccountQRCodeSync from "../../../../../account/page/qr-code-sync/AccountQRCodeSync"; +import AccountImportPeraSyncSuccess from "../../../../../account/page/import/pera-sync/success/AccountImportPeraSyncSuccess"; +import CardLayoutWithoutRoute from "../../../../../layouts/card-layout-without-route/CardLayoutWithoutRoute"; +import {useConnectFlowContext} from "../../../../context/ConnectFlowContext"; + +function ConnectPageImportAccountFromMobile() { + const { + formitoState: {importAccountFromMobileViews} + } = useConnectFlowContext(); + + return {renderContent()}; + + function renderContent() { + switch (importAccountFromMobileViews) { + case "qr": + return ; + case "success": + return ; + default: + return ; + } + } +} + +export default ConnectPageImportAccountFromMobile; diff --git a/src/connect/view/tab/add-import-account/import-account/ConnectPageImportAccount.tsx b/src/connect/view/tab/add-import-account/import-account/ConnectPageImportAccount.tsx new file mode 100644 index 0000000..1d4cb96 --- /dev/null +++ b/src/connect/view/tab/add-import-account/import-account/ConnectPageImportAccount.tsx @@ -0,0 +1,50 @@ +import AccountImportPassphrasePrepare from "../../../../../account/page/import/passphrase/prepare/AccountImportPassphrasePrepare"; +import AccountCreationAnimation from "../../../../../account/component/account-creation-animation/AccountCreationAnimation"; +import AccountImportPassphraseName from "../../../../../account/page/import/passphrase/name/AccountImportPassphraseName"; +import AccountImportPassphraseRecovery from "../../../../../account/page/import/passphrase/recovery/AccountImportPassphraseRecovery"; +import AccountSuccessPage from "../../../../../account/page/success/AccountSuccessPage"; +import {useConnectFlowContext} from "../../../../context/ConnectFlowContext"; +import CardLayoutWithoutRoute from "../../../../../layouts/card-layout-without-route/CardLayoutWithoutRoute"; + +function ConnectPageImportAccount() { + const { + formitoState: {importAccountViews} + } = useConnectFlowContext(); + + return importAccountViews === "success" ? ( + + ) : ( + {renderContent()} + ); + + function renderContent() { + let content = <>; + + switch (importAccountViews) { + case "prepare": + content = ; + break; + case "recovery": + content = ; + break; + case "name": + content = ; + break; + case "animation": + content = ( + + ); + break; + default: + break; + } + + return content; + } +} + +export default ConnectPageImportAccount; diff --git a/src/connect/view/tab/add-import-account/onboarding-option-list/ConnectPageOnboardingOptionList.tsx b/src/connect/view/tab/add-import-account/onboarding-option-list/ConnectPageOnboardingOptionList.tsx new file mode 100644 index 0000000..92a4be3 --- /dev/null +++ b/src/connect/view/tab/add-import-account/onboarding-option-list/ConnectPageOnboardingOptionList.tsx @@ -0,0 +1,82 @@ +import {ReactComponent as ArrowRightIcon} from "../../../../../core/ui/icons/arrow-right.svg"; + +import {List, ListItem} from "@hipo/react-ui-toolkit"; +import classNames from "classnames"; + +import {ACCOUNT_ONBOARDING_OPTIONS} from "../../../../../account/component/onboarding-option-list/util/accountOnboardingOptionListConstants"; +import Image from "../../../../../component/image/Image"; +import { + ConnectFlowAddImportAccountView, + useConnectFlowContext +} from "../../../../context/ConnectFlowContext"; + +interface ConnectPageOnboardingOptionListProps { + shouldShowIllustrations?: boolean; + customClassName?: string; +} + +function ConnectPageOnboardingOptionList({ + shouldShowIllustrations = false, + customClassName +}: ConnectPageOnboardingOptionListProps) { + const {dispatchFormitoAction} = useConnectFlowContext(); + + return ( + + {({id, helperText, title, icon, imgSrc}) => ( + { + handleChangeView(id); + } + }}> +
    + {!shouldShowIllustrations && icon} + +

    + {helperText} +

    + +
    +

    + {title} +

    + + +
    +
    + + {shouldShowIllustrations && ( + + )} +
    + )} +
    + ); + + function handleChangeView(id: string) { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + connectFlowAddImportAccountView: id as ConnectFlowAddImportAccountView + } + }); + } +} + +export default ConnectPageOnboardingOptionList; diff --git a/src/core/api/apiUtils.ts b/src/core/api/apiUtils.ts new file mode 100644 index 0000000..a90e5d5 --- /dev/null +++ b/src/core/api/apiUtils.ts @@ -0,0 +1,12 @@ +import {assetDBManager} from "../app/db"; +import algod from "../util/algod/algod"; +import {DEFAULT_ALGORAND_NODE_PROVIDER_TYPE} from "../util/algod/algodConstants"; +import {peraApi} from "../util/pera/api/peraApi"; + +function updateAPIsPreferredNetwork(network: NetworkToggle) { + algod.updateClient(network, DEFAULT_ALGORAND_NODE_PROVIDER_TYPE); + peraApi.updateNetwork(network); + assetDBManager.updateTable(network); +} + +export {updateAPIsPreferredNetwork}; diff --git a/src/core/api/index.ts b/src/core/api/index.ts new file mode 100644 index 0000000..901a23f --- /dev/null +++ b/src/core/api/index.ts @@ -0,0 +1,43 @@ +import Fetcher from "../network/Fetcher"; +import {FetcherConfig} from "../network/fetcherTypes"; +import {isProductionBuild} from "../util/environment/environmentConstants"; + +export const DEFAULT_API_NETWORK: NetworkToggle = isProductionBuild + ? "mainnet" + : "testnet"; + +export type ApiConfigType = Record; + +class Api { + #apiConfig: ConfigType; + #network: NetworkToggle; + #instance: Fetcher | undefined; + + constructor(config: ConfigType, network: NetworkToggle = DEFAULT_API_NETWORK) { + this.#apiConfig = config; + this.#network = network; + this.#instance = this.createApiInstance(); + } + + private createApiInstance() { + return new Fetcher(this.#apiConfig[this.#network]); + } + + getInstance() { + if (!this.#instance) { + this.#instance = this.createApiInstance(); + } + return this.#instance; + } + + get network() { + return this.#network; + } + + updateNetwork(network: NetworkToggle) { + this.#instance = undefined; + this.#network = network; + } +} + +export default Api; diff --git a/src/core/app/App.tsx b/src/core/app/App.tsx new file mode 100644 index 0000000..1b28426 --- /dev/null +++ b/src/core/app/App.tsx @@ -0,0 +1,148 @@ +import {Suspense, useEffect} from "react"; +import {Routes, Route, Navigate} from "react-router-dom"; + +import ROUTES from "../route/routes"; +import RouteLoading from "../route/loading/RouteLoading"; +import AccountFlow from "../../account/flow/AccountFlow"; +import RequirePassword from "../route/RequirePassword"; +import PasswordFlow from "../../password/flow/PasswordFlow"; +import SidebarLayout from "../../layouts/sidebar/SidebarLayout"; +import SettingsFlow from "../../settings/flow/SettingsFlow"; +import OverviewFlow from "../../overview/flow/OverviewFlow"; +import PasswordAccessPage from "../../password/page/access/PasswordAccessPage"; +import CardLayout from "../../layouts/card-layout/CardLayout"; +import ConnectFlow from "../../connect/flow/ConnectFlow"; +import TransactionSignFlow from "../../transaction/flow/TransactionSignFlow"; +import SendTxnFlow from "../../send-txn/flow/SendTxnFlow"; +import WelcomePage from "../../overview/page/welcome/WelcomePage"; +import AssetOptinFlow from "../../asset/opt-in/flow/AssetOptinFlow"; +import TransactionSignFlowContextProvider from "../../transaction/context/TransactionSignFlowContext"; +import ConnectFlowContextProvider from "../../connect/context/ConnectFlowContext"; +import useRegisterDevice from "../util/hook/useRegisterDevice"; +import useLockApp from "../util/hook/useLockApp"; +import useKeyboardShortcut, { + KEYBOARD_EVENT_KEY, + COMBINATOR_KEYS +} from "../util/hook/useKeyboardShortcut"; +import useCheckForInactivity from "../util/hook/useCheckForInactivity"; + +function App() { + const lockApp = useLockApp(); + + useCheckForInactivity(); + useRegisterDevice(); + useKeyboardShortcut([ + { + key: KEYBOARD_EVENT_KEY.K, + options: {combinatorKey: COMBINATOR_KEYS.META}, + callback: lockApp + } + // {key: KEYBOARD_EVENT_KEY.SLASH, callback: handleOpenSpotlight} + ]); + + useEffect(() => { + window.addEventListener("beforeunload", onUnload); + return () => { + window.removeEventListener("beforeunload", onUnload); + }; + + function onUnload() { + indexedDB.deleteDatabase("pera-wallet-assets"); + + lockApp(); + } + }, [lockApp]); + + return ( + }> + + }> + } /> + + }> + + } + /> + + + + + + } + /> + + + + + } + /> + + + + + } + /> + + } /> + + + } /> + + + + + } + /> + + + + + } + /> + + + + + } + /> + + + + + } + /> + + + ); +} + +export default App; diff --git a/src/core/app/AppContext.tsx b/src/core/app/AppContext.tsx new file mode 100644 index 0000000..d669170 --- /dev/null +++ b/src/core/app/AppContext.tsx @@ -0,0 +1,40 @@ +import {createContext, Dispatch, ReactNode, useContext, useReducer} from "react"; + +import {AppState, appStateReducer, AppStateReducerAction} from "./appStateReducer"; + +const initialAppContextValue = { + state: {} as AppState, + dispatch: (() => undefined) as Dispatch +}; + +const AppContext = createContext(initialAppContextValue); + +AppContext.displayName = "AppContext"; + +function AppContextProvider({ + initialAppStateFromDB, + children +}: { + initialAppStateFromDB: AppState; + children: ReactNode; +}) { + const [state, dispatch] = useReducer(appStateReducer, initialAppStateFromDB); + + return ( + + {children} + + ); +} + +function useAppContext() { + const {dispatch, state} = useContext(AppContext); + + return {dispatch, state}; +} + +export {AppContext, AppContextProvider, useAppContext}; diff --git a/src/core/app/appStateReducer.ts b/src/core/app/appStateReducer.ts new file mode 100644 index 0000000..398ce49 --- /dev/null +++ b/src/core/app/appStateReducer.ts @@ -0,0 +1,172 @@ +import {updateAPIsPreferredNetwork} from "../api/apiUtils"; +import {filterObject} from "../util/object/objectUtils"; + +export interface AppState extends CommonAppState { + accounts: AppDBScheme["accounts"]; + sessions: AppDBScheme["sessions"]; + masterkey?: string; + hasAccounts: boolean; + hasConnection: boolean; +} + +export type AppStateReducerAction = + | { + type: "SET_KEY"; + keys: Pick; + } + | { + type: "SET_THEME"; + theme: AppState["theme"]; + } + | { + type: "SET_PREFERRED_NETWORK"; + preferredNetwork: AppState["preferredNetwork"]; + } + | { + type: "SET_HASHED_MASTERKEY"; + masterkey: AppState["hashedMasterkey"]; + } + | { + type: "SET_MASTERKEY"; + masterkey: AppState["masterkey"]; + } + | { + type: "SET_HAS_CONNECTION"; + hasConnection: AppState["hasConnection"]; + } + | { + type: "SET_ACCOUNT"; + account: ValueOf | ValueOf[]; + } + | { + type: "REMOVE_ACCOUNT"; + address: string | string[]; + } + | { + type: "SET_SESSION"; + session: ValueOf | ValueOf[]; + } + | { + type: "REMOVE_SESSION"; + url: string | string[]; + } + | { + type: "SYNC_IDB"; + payload: Pick; + }; + +function appStateReducer(state: AppState, action: AppStateReducerAction) { + let newState = state; + + switch (action.type) { + case "SET_KEY": { + const {masterkey, hashedMasterkey} = action.keys; + + newState = { + ...state, + masterkey, + hashedMasterkey + }; + + break; + } + + case "SET_THEME": { + newState = {...state, theme: action.theme}; + + break; + } + + case "SET_PREFERRED_NETWORK": { + newState = {...state, preferredNetwork: action.preferredNetwork}; + + updateAPIsPreferredNetwork(action.preferredNetwork); + + break; + } + + case "SET_MASTERKEY": { + newState = {...state, masterkey: action.masterkey}; + + break; + } + + case "SET_HAS_CONNECTION": { + newState = {...state, hasConnection: action.hasConnection}; + + break; + } + + case "SET_ACCOUNT": { + const addedAccounts = Object.fromEntries( + ([] as AppDBAccount[]) + .concat(action.account) + .map((account) => [account.address, account]) + ); + + newState = { + ...state, + accounts: {...state.accounts, ...addedAccounts}, + hasAccounts: true + }; + + break; + } + + case "SET_SESSION": { + const addedSessions = Object.fromEntries( + ([] as AppDBSession[]) + .concat(action.session) + .map((session) => [session.url, session]) + ); + + newState = { + ...state, + sessions: {...state.sessions, ...addedSessions} + }; + + break; + } + + case "REMOVE_ACCOUNT": { + const accountAddresses = ([] as string[]).concat(action.address); + const filteredAccounts = filterObject((key) => accountAddresses.indexOf(key) < 0)( + state.accounts + ); + + newState = { + ...state, + accounts: filteredAccounts, + hasAccounts: Object.keys(filteredAccounts).length > 0 + }; + + break; + } + + case "REMOVE_SESSION": { + const sessionUrls = ([] as string[]).concat(action.url); + const filteredSessions = filterObject((key) => sessionUrls.indexOf(key) < 0)( + state.sessions + ); + + newState = {...state, sessions: filteredSessions}; + + break; + } + + case "SYNC_IDB": { + const {accounts, sessions} = action.payload; + + newState = {...state, accounts, sessions}; + + break; + } + + default: + break; + } + + return newState; +} + +export {appStateReducer}; diff --git a/src/core/app/db/appDBManager.ts b/src/core/app/db/appDBManager.ts new file mode 100644 index 0000000..0916811 --- /dev/null +++ b/src/core/app/db/appDBManager.ts @@ -0,0 +1,4 @@ +export const appDBTables: DBManagerTables = [ + {name: "accounts", autoIncrement: false}, + {name: "sessions", autoIncrement: false} +]; diff --git a/src/core/app/db/appDBScheme.d.ts b/src/core/app/db/appDBScheme.d.ts new file mode 100644 index 0000000..71e9d58 --- /dev/null +++ b/src/core/app/db/appDBScheme.d.ts @@ -0,0 +1,37 @@ +type NetworkToggle = "testnet" | "mainnet"; + +type AccountType = "standard" | "ledger"; + +interface AppDBAccount { + type?: "standard" | "ledger"; + name: string; + address: string; + pk: string; + date: Date | null; +} + +interface AppDBSession { + title: string; + description?: string; + url: string; + accountAddresses: string[]; + date: Date; + favicon?: string; + chainId?: number; + network: NetworkToggle; +} + +type AppSession = Omit; + +type AppDBTables = { + sessions: Record; + accounts: Record; +}; + +type AssetDBScheme = { + // assets table keyPath is composite key `${accountAddress},${assetId}` + assets: Record<`${string},${number}`, AccountASA>; + assets_testnet: Record<`${string},${number}`, AccountASA>; +}; + +type AppDBScheme = AppDBTables; diff --git a/src/core/app/db/assetDBManager.ts b/src/core/app/db/assetDBManager.ts new file mode 100644 index 0000000..5d69c74 --- /dev/null +++ b/src/core/app/db/assetDBManager.ts @@ -0,0 +1,57 @@ +import {AccountASA} from "../../util/pera/api/peraApiModels"; +import {DBManager} from "../../util/storage/db/DBManager"; + +export const assetDBTables: DBManagerTables = [ + { + name: "assets", + keypath: ["address", "asset_id"], + autoIncrement: false, + indexes: [ + ["address", "address"], + ["asset_id", "asset_id"] + ] + }, + { + name: "assets_testnet", + keypath: ["address", "asset_id"], + autoIncrement: false, + indexes: [ + ["address", "address"], + ["asset_id", "asset_id"] + ] + } +]; + +export class AssetDBManager extends DBManager { + private table: "assets" | "assets_testnet"; + + constructor(tables: DBManagerTables) { + super("pera-wallet-assets", tables); + + this.table = "assets"; + } + + updateTable(network: NetworkToggle) { + this.table = network === "testnet" ? "assets_testnet" : "assets"; + } + + getAllByAccountAddress(address: string): Promise { + const keyRange = IDBKeyRange.only(address); + + return this.getAllValues(this.table, { + indexName: "address", + keyRange, + isEncrypted: false + }); + } + + deleteAllByAccountAddress(address: string) { + const keyRange = IDBKeyRange.bound([address, 0], [address, Number.MAX_SAFE_INTEGER]); + + return this.delete(this.table)({key: keyRange}); + } + + setAllAssets() { + return this.setAll(this.table); + } +} diff --git a/src/core/app/db/index.ts b/src/core/app/db/index.ts new file mode 100644 index 0000000..cf01b22 --- /dev/null +++ b/src/core/app/db/index.ts @@ -0,0 +1,8 @@ +import {DBManager} from "../../util/storage/db/DBManager"; +import {appDBTables} from "./appDBManager"; +import {AssetDBManager, assetDBTables} from "./assetDBManager"; + +const appDBManager = new DBManager("pera-wallet", appDBTables); +const assetDBManager = new AssetDBManager(assetDBTables); + +export {appDBManager, assetDBManager}; diff --git a/src/core/app/teller/appTellerManager.ts b/src/core/app/teller/appTellerManager.ts new file mode 100644 index 0000000..b77ffb5 --- /dev/null +++ b/src/core/app/teller/appTellerManager.ts @@ -0,0 +1,63 @@ +import Teller from "../../network/teller/Teller"; +import {PeraWalletTransaction} from "../../util/model/peraWalletModel"; + +export type PeraTeller = + | { + type: "CONNECT"; + data: AppSession; + } + | { + type: "CONNECT_CALLBACK"; + data: { + name?: string; + addresses: string[]; + }; + } + | { + type: "CONNECT_NETWORK_MISMATCH"; + error: string; + } + | { + type: "CREATE_PASSCODE_EMBEDDED"; + } + | { + type: "SELECT_ACCOUNT_EMBEDDED"; + } + | { + type: "CREATE_PASSCODE_EMBEDDED_CALLBACK"; + } + | { + type: "SELECT_ACCOUNT_EMBEDDED_CALLBACK"; + } + | { + type: "SIGN_TXN"; + txn: PeraWalletTransaction[]; + } + | { + type: "SIGN_TXN_CALLBACK"; + signedTxns: SignedTxn[]; + } + | { + type: "SIGN_TXN_NETWORK_MISMATCH"; + error: string; + } + | { + type: "SIGN_TXN_CALLBACK_ERROR"; + error: string; + } + | { + type: "SESSION_DISCONNECTED"; + error: string; + } + | { + type: "TAB_OPEN"; + } + | { + type: "TAB_OPEN_RECEIVED"; + }; + +const appTellerManager = new Teller({ + channel: "pera-web-wallet" +}); + +export default appTellerManager; diff --git a/src/core/integrations/moon-pay/modal/MoonPayModal.tsx b/src/core/integrations/moon-pay/modal/MoonPayModal.tsx new file mode 100644 index 0000000..9457cd8 --- /dev/null +++ b/src/core/integrations/moon-pay/modal/MoonPayModal.tsx @@ -0,0 +1,81 @@ +import {ReactComponent as CloseIcon} from "../../../ui/icons/close.svg"; +import moonPayLogoURL from "../../../ui/image/moon-pay-logo.svg"; + +import "./_moon-pay-modal.scss"; + +import {useEffect} from "react"; + +import useAsyncProcess from "../../../network/async-process/useAsyncProcess"; +import {peraApi} from "../../../util/pera/api/peraApi"; +import Button from "../../../../component/button/Button"; +import PeraLoader from "../../../../component/loader/pera/PeraLoader"; + +interface MoonPayModalProps { + address: string; + onClose: VoidFunction; +} + +export const MOON_PAY_MODAL_ID = "moon-pay-modal"; + +function MoonPayModal({address, onClose}: MoonPayModalProps) { + const {runAsyncProcess, state} = useAsyncProcess<{url: string}>(); + + useEffect(() => { + runAsyncProcess( + peraApi.fetchMoonPayURL({ + wallet_address: address, + redirect_url: "https://web.perawallet.app" + }) + ); + }, [address, runAsyncProcess]); + + if (state.isRequestPending) { + return ( +
    + +
    + ); + } + + return ( +
    +
    +

    {"Add Funds"}

    + + +
    + +
    + {state.data?.url ? ( + <> + + + ) : ( +

    {"We failed to generate MoonPay URL."}

    + )} +
    + +
    +

    {"Powered by "}

    + + {"MoonPay +
    +
    + ); +} + +export default MoonPayModal; diff --git a/src/core/integrations/moon-pay/modal/_moon-pay-modal.scss b/src/core/integrations/moon-pay/modal/_moon-pay-modal.scss new file mode 100644 index 0000000..ee61437 --- /dev/null +++ b/src/core/integrations/moon-pay/modal/_moon-pay-modal.scss @@ -0,0 +1,46 @@ +.moon-pay-modal-container { + .modal__body { + padding: 0; + } +} + +.moon-pay-modal { + width: 480px; + height: 700px; + + &--loading { + display: grid; + + place-content: center; + } +} + +.moon-pay-modal__header { + display: flex; + align-items: center; + justify-content: space-between; + + padding: 12px 28px 4px; + + border-bottom: 1px solid var(--gray-200); +} + +.moon-pay-modal__close-button { + padding: 0 4px; +} + +.moon-pay-modal__iframe-container { + height: calc(100% - 104px); + + padding: 0 16px 8px 10px; +} + +.moon-pay-modal__footer { + display: flex; + justify-content: center; + gap: 12px; + + padding: 12px 28px; + + border-top: 1px solid var(--gray-200); +} diff --git a/src/core/network/Fetcher.ts b/src/core/network/Fetcher.ts new file mode 100644 index 0000000..f776b92 --- /dev/null +++ b/src/core/network/Fetcher.ts @@ -0,0 +1,137 @@ +import {isRecord} from "../util/object/objectUtils"; +import {stringifySearchParams} from "../util/url/urlUtils"; +import FetcherError from "./FetcherError"; +import {FetcherConfig, FetcherMiddleware} from "./fetcherTypes"; +import {fetchJSONMiddleware} from "./fetcherUtils"; + +class Fetcher { + readonly config: FetcherConfig; + + constructor(config: FetcherConfig) { + this.config = { + responseMiddlewares: [fetchJSONMiddleware], + rejectMiddlewares: [], + ...config, + initOptions: { + ...(config?.initOptions || {}) + } + }; + } + + run( + options: Omit & { + method: "GET" | "POST" | "PUT" | "DELETE" | "PATCH" | "OPTIONS"; + params?: Record; + responseMiddlewares?: FetcherMiddleware[]; + rejectMiddlewares?: FetcherMiddleware[]; + body?: any; + bodyParser?: (body: any) => any; + }, + path: string + ): Promise { + const {baseUrl, initOptions, bodyParser: bodyParserFromConfig} = this.config; + const { + params, + responseMiddlewares, + rejectMiddlewares, + body, + bodyParser: bodyParserFromOptions, + ...otherOptions + } = options; + + const bodyParser = bodyParserFromOptions || bodyParserFromConfig; + + const url = + isRecord(params) && Object.keys(params).length + ? `${baseUrl}${path}?${stringifySearchParams(params)}` + : `${baseUrl}${path}`; + + const promise = fetch(url, { + body: bodyParser ? bodyParser(body) : body, + ...initOptions, + ...otherOptions + }); + + return promise + .catch((error) => { + if (error.name === "AbortError") { + return Promise.reject( + new FetcherError({ + type: "Cancelled", + data: error, + message: "Request cancelled", + statusCode: NaN + }) + ); + } + + return Promise.reject( + new FetcherError({ + type: "ConnectionError", + data: error, + message: "Network error. Try again later.", + statusCode: NaN + }) + ); + }) + .then((response) => { + if (response.ok) { + return Promise.resolve(response); + } + + return Promise.reject(response); + }) + .then(async (response) => { + const middlewares = responseMiddlewares || this.config.responseMiddlewares; + let final = response; + + if (middlewares) { + for (const middleware of middlewares) { + final = await middleware(final); + } + } + + return final as unknown as Promise; + }) + .catch(async (errorResponse) => { + if (errorResponse.status === "Cancelled") { + return Promise.reject(errorResponse); + } + + const middlewares = rejectMiddlewares || this.config.rejectMiddlewares; + let finalError; + + try { + const errorResponseJSON = await errorResponse.json(); + + finalError = new FetcherError({ + statusCode: errorResponse.status, + type: errorResponseJSON?.type || "ApiError", + data: errorResponseJSON, + message: + // TODO: generateErrorMessage(errorResponseJSON) || + `${otherOptions.method} ${url} request failed` + }); + } catch { + finalError = new FetcherError({ + statusCode: errorResponse.status, + type: "ApiError", + data: errorResponse, + message: + // TODO: generateErrorMessage(errorResponse) || + `${otherOptions.method} ${url} request failed` + }); + } + + if (middlewares) { + for (const middleware of middlewares) { + finalError = await middleware(finalError); + } + } + + return Promise.reject(finalError); + }); + } +} + +export default Fetcher; diff --git a/src/core/network/FetcherError.ts b/src/core/network/FetcherError.ts new file mode 100644 index 0000000..cd06c47 --- /dev/null +++ b/src/core/network/FetcherError.ts @@ -0,0 +1,31 @@ +import {FetcherErrorStatus} from "./fetcherTypes"; + +class FetcherError extends Error { + data: any; + type: FetcherErrorStatus; + statusCode: number; + + constructor( + options: { + type: FetcherErrorStatus; + data: any; + message: string; + statusCode: number; + }, + ...args: any[] + ) { + super(...args); + + if (Error.captureStackTrace) { + Error.captureStackTrace(this, FetcherError); + } + + this.name = "FetcherError"; + this.type = options.type; + this.data = options.data; + this.message = options.message; + this.statusCode = options.statusCode; + } +} + +export default FetcherError; diff --git a/src/core/network/async-process/asyncProcess.d.ts b/src/core/network/async-process/asyncProcess.d.ts new file mode 100644 index 0000000..f3dcea3 --- /dev/null +++ b/src/core/network/async-process/asyncProcess.d.ts @@ -0,0 +1,24 @@ +interface AsyncProcessState { + isRequestPending: boolean; + isRequestFetched: boolean; + data: Data | null; + error: Error | null; + requestPayload?: Payload; +} + +interface UseAsyncProcessOptions { + initialState?: AsyncProcessState; + shouldResetDataWhenPending?: boolean; +} + +type AsyncProcessCallBack = ( + promise: Promise, + options?: { + forceResetPreviousAsyncState?: boolean; + responseSerializer?: (response: Response) => Data; + } +) => Promise; + +type AsyncStateSetter = React.Dispatch< + React.SetStateAction> +>; diff --git a/src/core/network/async-process/asyncProcessConstants.ts b/src/core/network/async-process/asyncProcessConstants.ts new file mode 100644 index 0000000..f1e2916 --- /dev/null +++ b/src/core/network/async-process/asyncProcessConstants.ts @@ -0,0 +1,8 @@ +const INITIAL_ASYNC_PROCESS_STATE: AsyncProcessState = { + isRequestPending: false, + isRequestFetched: false, + data: null, + error: null +}; + +export {INITIAL_ASYNC_PROCESS_STATE}; diff --git a/src/core/network/async-process/useAsyncProcess.tsx b/src/core/network/async-process/useAsyncProcess.tsx new file mode 100644 index 0000000..8c2a4fe --- /dev/null +++ b/src/core/network/async-process/useAsyncProcess.tsx @@ -0,0 +1,73 @@ +import {useCallback, useEffect, useRef, useState} from "react"; + +import useOnUnmount from "../../util/hook/useOnUnmount"; +import {INITIAL_ASYNC_PROCESS_STATE} from "./asyncProcessConstants"; + +function useAsyncProcess(options?: UseAsyncProcessOptions) { + const {initialState, shouldResetDataWhenPending = true} = options || {}; + const [asyncState, setAsyncState] = useState>( + initialState || INITIAL_ASYNC_PROCESS_STATE + ); + const latestDataRef = useRef(asyncState.data); + const isUnmountedRef = useRef(false); + const asyncStateSetter = useCallback>( + (state) => (isUnmountedRef.current ? () => undefined : setAsyncState(state)), + [] + ); + + const runAsyncProcess: AsyncProcessCallBack = useCallback( + (promise, asyncCallbackOptions) => { + const shouldReset = + typeof asyncCallbackOptions?.forceResetPreviousAsyncState === "boolean" + ? asyncCallbackOptions.forceResetPreviousAsyncState + : shouldResetDataWhenPending; + + asyncStateSetter({ + isRequestPending: true, + isRequestFetched: !shouldReset, + data: shouldReset ? null : latestDataRef.current, + error: null + }); + + promise + .then((response) => { + asyncStateSetter({ + isRequestPending: false, + isRequestFetched: true, + data: asyncCallbackOptions?.responseSerializer + ? asyncCallbackOptions.responseSerializer(response) + : response, + error: null + }); + }) + .catch((error) => { + console.error(error); + asyncStateSetter({ + isRequestPending: false, + isRequestFetched: true, + data: null, + error + }); + }); + + return promise; + }, + [asyncStateSetter, shouldResetDataWhenPending] + ); + + useEffect(() => { + latestDataRef.current = asyncState.data; + }, [asyncState.data]); + + useOnUnmount(() => { + isUnmountedRef.current = true; + }); + + return { + state: asyncState, + setState: asyncStateSetter, + runAsyncProcess + }; +} + +export default useAsyncProcess; diff --git a/src/core/network/fetcherTypes.ts b/src/core/network/fetcherTypes.ts new file mode 100644 index 0000000..8fc2d19 --- /dev/null +++ b/src/core/network/fetcherTypes.ts @@ -0,0 +1,15 @@ +type FetcherMiddleware = ( + dataFromLastMiddleware: Argument +) => Promise; + +interface FetcherConfig { + baseUrl: string; + initOptions?: RequestInit; + responseMiddlewares?: FetcherMiddleware[]; + rejectMiddlewares?: FetcherMiddleware[]; + bodyParser?: (body: any) => any; +} + +type FetcherErrorStatus = number | "ConnectionError" | "Cancelled" | "ApiError"; + +export type {FetcherMiddleware, FetcherConfig, FetcherErrorStatus}; diff --git a/src/core/network/fetcherUtils.ts b/src/core/network/fetcherUtils.ts new file mode 100644 index 0000000..0ad15e3 --- /dev/null +++ b/src/core/network/fetcherUtils.ts @@ -0,0 +1,9 @@ +function fetchJSONMiddleware(response: globalThis.Response) { + return response.json().catch((error) => { + console.error("Response may not support `json` conversion, so suppress the error"); + console.error(error); + return {}; + }); +} + +export {fetchJSONMiddleware}; diff --git a/src/core/network/globalNetworkModels.d.ts b/src/core/network/globalNetworkModels.d.ts new file mode 100644 index 0000000..eef956b --- /dev/null +++ b/src/core/network/globalNetworkModels.d.ts @@ -0,0 +1,20 @@ +interface ListRequestResponse { + next: null | string; + previous: null | string; + results: Result[]; +} + +// TODO: confirm the existing list request params on BE +type ListRequestParams = Partial<{ + ordering: Ordering; + limit: "all" | number; + offset: number; + search: string; + cursor: string; +}>; + +interface HipoApiErrorShape { + type: string; + detail: Record; + fallback_message: string; +} diff --git a/src/core/network/httpStatusCodes.ts b/src/core/network/httpStatusCodes.ts new file mode 100644 index 0000000..d48c4af --- /dev/null +++ b/src/core/network/httpStatusCodes.ts @@ -0,0 +1,12 @@ +/* eslint-disable no-magic-numbers */ +enum HttpStatusCodes { + OK = 200, + NOT_MODIFIED = 304, + BAD_REQUEST = 400, + UNAUTHORIZED = 401, + FORBIDDEN = 403, + NOT_FOUND = 404 +} +/* eslint-enable no-magic-numbers */ + +export default HttpStatusCodes; diff --git a/src/core/network/teller/Teller.ts b/src/core/network/teller/Teller.ts new file mode 100644 index 0000000..e1c0291 --- /dev/null +++ b/src/core/network/teller/Teller.ts @@ -0,0 +1,76 @@ +const TELLER_MESSAGE_TIMEOUT = 1000; + +class Teller { + private channel: string; + private listener?: (event: MessageEvent>) => void; + + /** + * Cross-origin solution to communicate between tabs, windows, and iframes. + Usage: + - Create a new Teller instance. + - If you want to use a custom message type, you can pass it to Teller. + - const tellerManager = new Teller(); + - Call tellerManager.sendMessage({message, targetWindow, origin}) to send a message to the other tab/window/iframe. + - Call tellerManager.setupListener({onReceiveMessage}) to listen for messages from the other tab/window/iframe. + - Call tellerManager.close(); to close the active listener. + + Details on: https://developer.mozilla.org/en-US/docs/Web/API/Window/postMessage + */ + constructor(options: TellerOptions) { + this.listener = undefined; + this.channel = options.channel; + } + + public setupListener({ + onReceiveMessage + }: { + onReceiveMessage: (event: MessageEvent>) => void; + }) { + // Close the existing listener if it exists + this.close(); + + this.listener = (event: MessageEvent>) => { + if (typeof event.data === "object") { + try { + if (event.data.channel === this.channel) { + onReceiveMessage(event); + } + } catch (error) { + console.error(error); + } + } + }; + + // Set the new listener + window.addEventListener("message", this.listener); + } + + public sendMessage({ + message, + targetWindow, + origin, + timeout = TELLER_MESSAGE_TIMEOUT + }: TellerMessageOptions) { + setTimeout(() => { + const tellerMessage = { + channel: this.channel, + message + }; + + targetWindow.postMessage(tellerMessage, { + // if the origin is not specified, the message will not be origin specific + targetOrigin: origin || "*" + }); + }, timeout); + } + + public close() { + if (this.listener) { + window.removeEventListener("message", this.listener); + + this.listener = undefined; + } + } +} + +export default Teller; diff --git a/src/core/network/teller/tellerTypes.d.ts b/src/core/network/teller/tellerTypes.d.ts new file mode 100644 index 0000000..f12d8fe --- /dev/null +++ b/src/core/network/teller/tellerTypes.d.ts @@ -0,0 +1,16 @@ +interface TellerOptions { + channel: string; + allowedOrigins?: string | string[]; +} + +interface TellerMessageOptions { + message: T; + targetWindow: Window | MessageEventSource; + origin?: string; + timeout?: number; +} + +interface TellerMessage { + channel: string; + message: T; +} diff --git a/src/core/reportWebVitals.ts b/src/core/reportWebVitals.ts new file mode 100644 index 0000000..c42054d --- /dev/null +++ b/src/core/reportWebVitals.ts @@ -0,0 +1,15 @@ +import {ReportHandler} from "web-vitals"; + +const reportWebVitals = (onPerfEntry?: ReportHandler) => { + if (onPerfEntry && onPerfEntry instanceof Function) { + import("web-vitals").then(({getCLS, getFID, getFCP, getLCP, getTTFB}) => { + getCLS(onPerfEntry); + getFID(onPerfEntry); + getFCP(onPerfEntry); + getLCP(onPerfEntry); + getTTFB(onPerfEntry); + }); + } +}; + +export default reportWebVitals; diff --git a/src/core/route/RequirePassword.tsx b/src/core/route/RequirePassword.tsx new file mode 100644 index 0000000..b64392b --- /dev/null +++ b/src/core/route/RequirePassword.tsx @@ -0,0 +1,34 @@ +import {Navigate, useLocation} from "react-router-dom"; + +import ROUTES from "./routes"; +import {useAppContext} from "../app/AppContext"; + +type LocationState = { + isNavigated?: boolean; +}; + +function RequirePassword({children}: {children: JSX.Element}) { + const location = useLocation(); + const {isNavigated} = (location.state as LocationState) || {}; + const { + state: {hashedMasterkey, masterkey} + } = useAppContext(); + + if (!hashedMasterkey) { + return ; + } + + if (!masterkey) { + return ( + + ); + } + + return children; +} + +export default RequirePassword; diff --git a/src/core/route/context/NavigationContext.tsx b/src/core/route/context/NavigationContext.tsx new file mode 100644 index 0000000..75bd5d3 --- /dev/null +++ b/src/core/route/context/NavigationContext.tsx @@ -0,0 +1,67 @@ +import React, {createContext, useContext, useLayoutEffect} from "react"; +import {Location} from "react-router-dom"; + +import {useAppContext} from "../../app/AppContext"; +import {FormitoReducerAction} from "../../util/hook/formito/formitoStateReducer"; +import useFormito from "../../util/hook/formito/useFormito"; +import useLocationWithState from "../../util/hook/useLocationWithState"; +import ROUTES from "../routes"; + +type NavigationState = { + headerGoBackLink: string; +}; + +const NavigationContext = createContext( + {} as { + navigationState: NavigationState; + dispatchNavigationStateAction: React.Dispatch>; + } +); + +function NavigationContextProvider({children}: {children: React.ReactNode}) { + const { + state: {hasAccounts} + } = useAppContext(); + const {formitoState, dispatchFormitoAction} = useFormito({ + headerGoBackLink: hasAccounts ? ROUTES.OVERVIEW.ROUTE : ROUTES.BASE + }); + + return ( + + {children} + + ); +} + +function useNavigationContext() { + return useContext(NavigationContext); +} + +function withGoBackLink

    >( + WrappedFlow: React.FC

    , + link?: string +) { + return (props: P) => { + const {dispatchNavigationStateAction} = useNavigationContext(); + const {from} = useLocationWithState<{from?: Location}>(); + const headerGoBackLink = link || from?.pathname; + + useLayoutEffect(() => { + if (headerGoBackLink) { + dispatchNavigationStateAction({ + type: "SET_FORM_VALUE", + payload: {headerGoBackLink} + }); + } + }, [dispatchNavigationStateAction, headerGoBackLink]); + + return ; + }; +} + +export default NavigationContextProvider; +export {useNavigationContext, withGoBackLink}; diff --git a/src/core/route/loading/RouteLoading.tsx b/src/core/route/loading/RouteLoading.tsx new file mode 100644 index 0000000..6e4d580 --- /dev/null +++ b/src/core/route/loading/RouteLoading.tsx @@ -0,0 +1,39 @@ +import "./_route-loading.scss"; + +import {useEffect, useState} from "react"; + +const SECOND_IN_MS = 1000; + +interface RouteLoadingProps { + /** + * Number of seconds to wait before showing the content. Used to avoid flickering spinners caused by very fast page loads. + */ + delayInSeconds?: number; +} + +const DEFAULT_DELAY_IN_SECONDS = 1.3; + +function RouteLoading({delayInSeconds = DEFAULT_DELAY_IN_SECONDS}: RouteLoadingProps) { + const [shouldShowContent, setShouldShowContent] = useState(false); + + useEffect(() => { + const timeout = setTimeout(() => { + setShouldShowContent(true); + }, delayInSeconds * SECOND_IN_MS); + + return () => { + clearTimeout(timeout); + }; + }, [delayInSeconds]); + + return shouldShowContent ? ( +

    + { + // Spinner can be placed here + "Loading ..." + } +
    + ) : null; +} + +export default RouteLoading; diff --git a/src/core/route/loading/_route-loading.scss b/src/core/route/loading/_route-loading.scss new file mode 100644 index 0000000..015a626 --- /dev/null +++ b/src/core/route/loading/_route-loading.scss @@ -0,0 +1,13 @@ +.route-loading { + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; + + display: flex; + align-items: center; + justify-content: center; + + background-color: var(--background-color); +} diff --git a/src/core/route/navigate/NavigateFlow.tsx b/src/core/route/navigate/NavigateFlow.tsx new file mode 100644 index 0000000..cbad084 --- /dev/null +++ b/src/core/route/navigate/NavigateFlow.tsx @@ -0,0 +1,26 @@ +import {Navigate, NavigateProps, To} from "react-router-dom"; + +import useLocationWithState from "../../util/hook/useLocationWithState"; +import ROUTES from "../routes"; + +type NavigateFlowProps = Omit & { + children: JSX.Element; + to?: To; +}; + +type LocationState = { + isNavigated: boolean; +}; + +function NavigateFlow(props: NavigateFlowProps) { + const {to, children, ...rest} = props; + const {isNavigated} = useLocationWithState(); + + if (!isNavigated) { + return ; + } + + return children; +} + +export default NavigateFlow; diff --git a/src/core/route/navigate/useNavigateFlow.tsx b/src/core/route/navigate/useNavigateFlow.tsx new file mode 100644 index 0000000..9bdf31a --- /dev/null +++ b/src/core/route/navigate/useNavigateFlow.tsx @@ -0,0 +1,10 @@ +import {NavigateOptions, To, useNavigate} from "react-router-dom"; + +function useNavigateFlow() { + const navigate = useNavigate(); + + return (to: To, options?: NavigateOptions) => + navigate(to, {...options, state: {...options?.state, isNavigated: true}}); +} + +export default useNavigateFlow; diff --git a/src/core/route/routes.ts b/src/core/route/routes.ts new file mode 100644 index 0000000..8a57d13 --- /dev/null +++ b/src/core/route/routes.ts @@ -0,0 +1,232 @@ +const BASE = "/" as const; +const PASSWORD_ROUTE = "password"; +const SUCCESS_ROUTE = "success"; +const CREATE_ROUTE = "create"; +const PENDING_ROUTE = "pending"; +const ACCESS_ROUTE = "access"; +const QR_ROUTE = "qr"; +const PASSPHRASE_ROUTE = "passphrase"; + +// ==== Overview Flow ==== +const OVERVIEW_ROUTE = "overview"; + +// ==== Connect Flow ==== +const CONNECT_ROUTE = "connect"; + +// ==== Account Flow ==== +const ACCOUNT_ROUTE = "account"; + +const ACCOUNT_PASSPHRASE_RECOVERY_ROUTE = "recovery"; +const ACCOUNT_PASSPHRASE_VERIFY_ROUTE = "verify"; + +const ACCOUNT_IMPORT_ROUTE = "import"; +const ACCOUNT_IMPORT_PASSPHRASE_NAME = "name"; +const ACCOUNT_IMPORT_PERA_SYNC_ROUTE = "pera"; +const ACCOUNT_IMPORT_LEDGER_ROUTE = "ledger"; + +// ==== Transaction Flow ==== +const TRANSACTION_ROUTE = "transaction"; +const TRANSACTION_SIGN_ROUTE = "sign"; + +// ==== Send Flow ==== +const SEND_TXN_ROUTE = "send"; +const SEND_TXN_ACCOUNTS_ROUTE = "accounts"; +const SEND_TXN_ASSETS_ROUTE = "assets"; +const SEND_TXN_CONFIRM_ROUTE = "confirm"; + +// ==== Opt-in Flow ==== +const ASSET_OPTIN_ROUTE = "optin"; +const ASSET_OPTIN_ACCOUNTS_ROUTE = "accounts"; + +// ==== Settings Flow ==== +const SETTINGS_ROUTE = "settings"; +const SESSIONS_ROUTE = "sessions"; + +// ==== Transfer Flow ==== +const TRANSFER_ROUTE = "transfer"; + +const ROUTES = { + BASE, + + ACCESS: { + ROUTE: `${BASE}${ACCESS_ROUTE}` + }, + + PASSWORD: { + ROUTE: `${BASE}${PASSWORD_ROUTE}`, + + CREATE: { + ROUTE: `${CREATE_ROUTE}`, + FULL_PATH: `${BASE}${PASSWORD_ROUTE}/${CREATE_ROUTE}` + } + }, + + OVERVIEW: { + ROUTE: `${BASE}${OVERVIEW_ROUTE}` + }, + + CONNECT: { + ROUTE: `${BASE}${CONNECT_ROUTE}` + }, + + TRANSFER: { + ROUTE: `${BASE}${TRANSFER_ROUTE}`, + + SELECT_ACCOUNTS: { + ROUTE: ACCOUNT_ROUTE, + FULL_PATH: `${BASE}${TRANSFER_ROUTE}/${ACCOUNT_ROUTE}` + }, + + QR: { + ROUTE: QR_ROUTE, + FULL_PATH: `${BASE}${TRANSFER_ROUTE}/${QR_ROUTE}` + } + }, + + ACCOUNT: { + ROUTE: `${BASE}${ACCOUNT_ROUTE}`, + + CREATE: { + ROUTE: CREATE_ROUTE, + FULL_PATH: `${BASE}${ACCOUNT_ROUTE}/${CREATE_ROUTE}`, + + SUCCESS: { + ROUTE: SUCCESS_ROUTE, + FULL_PATH: `${BASE}${ACCOUNT_ROUTE}/${CREATE_ROUTE}/${SUCCESS_ROUTE}` + }, + + PENDING: { + ROUTE: PENDING_ROUTE, + FULL_PATH: `${BASE}${ACCOUNT_ROUTE}${CREATE_ROUTE}${PENDING_ROUTE}` + } + }, + + PASSPHRASE: { + ROUTE: PASSPHRASE_ROUTE, + FULL_PATH: `${BASE}${ACCOUNT_ROUTE}/${PASSPHRASE_ROUTE}`, + + RECOVERY: { + ROUTE: ACCOUNT_PASSPHRASE_RECOVERY_ROUTE, + FULL_PATH: `${BASE}${ACCOUNT_ROUTE}/${PASSPHRASE_ROUTE}/${ACCOUNT_PASSPHRASE_RECOVERY_ROUTE}` + }, + + VERIFY: { + ROUTE: ACCOUNT_PASSPHRASE_VERIFY_ROUTE, + FULL_PATH: `${BASE}${ACCOUNT_ROUTE}/${PASSPHRASE_ROUTE}/${ACCOUNT_PASSPHRASE_VERIFY_ROUTE}` + }, + + SUCCESS: { + ROUTE: SUCCESS_ROUTE, + FULL_PATH: `${BASE}${ACCOUNT_ROUTE}/${PASSPHRASE_ROUTE}/${SUCCESS_ROUTE}` + } + }, + + IMPORT: { + ROUTE: ACCOUNT_IMPORT_ROUTE, + FULL_PATH: `${BASE}${ACCOUNT_ROUTE}/${ACCOUNT_IMPORT_ROUTE}`, + + PASSPHRASE: { + ROUTE: PASSPHRASE_ROUTE, + FULL_PATH: `${BASE}${ACCOUNT_ROUTE}/${ACCOUNT_IMPORT_ROUTE}/${PASSPHRASE_ROUTE}`, + + RECOVERY: { + ROUTE: ACCOUNT_PASSPHRASE_RECOVERY_ROUTE, + FULL_PATH: `${BASE}${ACCOUNT_ROUTE}/${ACCOUNT_IMPORT_ROUTE}/${PASSPHRASE_ROUTE}/${ACCOUNT_PASSPHRASE_RECOVERY_ROUTE}` + }, + + NAME: { + ROUTE: ACCOUNT_IMPORT_PASSPHRASE_NAME, + FULL_PATH: `${BASE}${ACCOUNT_ROUTE}/${ACCOUNT_IMPORT_ROUTE}/${PASSPHRASE_ROUTE}/${ACCOUNT_IMPORT_PASSPHRASE_NAME}` + }, + + SUCCESS: { + ROUTE: SUCCESS_ROUTE, + FULL_PATH: `${BASE}${ACCOUNT_ROUTE}/${ACCOUNT_IMPORT_ROUTE}/${PASSPHRASE_ROUTE}/${SUCCESS_ROUTE}` + }, + + PENDING: { + ROUTE: PENDING_ROUTE, + FULL_PATH: `${BASE}${ACCOUNT_ROUTE}/${ACCOUNT_IMPORT_ROUTE}/${PASSPHRASE_ROUTE}/${PENDING_ROUTE}` + } + }, + + PERA_SYNC: { + ROUTE: ACCOUNT_IMPORT_PERA_SYNC_ROUTE, + FULL_PATH: `${BASE}${ACCOUNT_ROUTE}/${ACCOUNT_IMPORT_ROUTE}/${ACCOUNT_IMPORT_PERA_SYNC_ROUTE}`, + + QR: { + ROUTE: QR_ROUTE, + FULL_PATH: `${BASE}${ACCOUNT_ROUTE}/${ACCOUNT_IMPORT_ROUTE}/${ACCOUNT_IMPORT_PERA_SYNC_ROUTE}/${QR_ROUTE}` + }, + + SUCCESS: { + ROUTE: SUCCESS_ROUTE, + FULL_PATH: `${BASE}${ACCOUNT_ROUTE}/${ACCOUNT_IMPORT_ROUTE}/${ACCOUNT_IMPORT_PERA_SYNC_ROUTE}/${SUCCESS_ROUTE}` + } + }, + + LEDGER: { + ROUTE: ACCOUNT_IMPORT_LEDGER_ROUTE, + FULL_PATH: `${BASE}${ACCOUNT_ROUTE}/${ACCOUNT_IMPORT_ROUTE}/${ACCOUNT_IMPORT_LEDGER_ROUTE}` + } + } + }, + + TRANSACTION: { + ROUTE: `${BASE}${TRANSACTION_ROUTE}`, + + SIGN: { + ROUTE: TRANSACTION_SIGN_ROUTE, + FULL_PATH: `${BASE}${TRANSACTION_ROUTE}/${TRANSACTION_SIGN_ROUTE}` + } + }, + + SEND_TXN: { + ROUTE: `${BASE}${SEND_TXN_ROUTE}`, + + ACCOUNTS: { + ROUTE: SEND_TXN_ACCOUNTS_ROUTE, + FULL_PATH: `${BASE}${SEND_TXN_ROUTE}/${SEND_TXN_ACCOUNTS_ROUTE}` + }, + + ASSETS: { + ROUTE: SEND_TXN_ASSETS_ROUTE, + FULL_PATH: `${BASE}${SEND_TXN_ROUTE}/${SEND_TXN_ASSETS_ROUTE}` + }, + + CONFIRM: { + ROUTE: SEND_TXN_CONFIRM_ROUTE, + FULL_PATH: `${BASE}${SEND_TXN_ROUTE}/${SEND_TXN_CONFIRM_ROUTE}` + }, + + SUCCESS: { + ROUTE: SUCCESS_ROUTE, + FULL_PATH: `${BASE}${SEND_TXN_ROUTE}/${SUCCESS_ROUTE}` + } + }, + + ASSET_OPTIN: { + ROUTE: `${BASE}${ASSET_OPTIN_ROUTE}`, + + ACCOUNTS: { + ROUTE: ASSET_OPTIN_ACCOUNTS_ROUTE, + FULL_PATH: `${BASE}${ASSET_OPTIN_ROUTE}/${ASSET_OPTIN_ACCOUNTS_ROUTE}` + } + }, + + SETTINGS: { + ROUTE: `${BASE}${SETTINGS_ROUTE}`, + + SESSIONS: { + ROUTE: SESSIONS_ROUTE, + FULL_PATH: `${BASE}${SETTINGS_ROUTE}/${SESSIONS_ROUTE}` + }, + + TRANSFER_MOBILE: { + ROUTE: TRANSFER_ROUTE, + FULL_PATH: `${BASE}${SETTINGS_ROUTE}/${TRANSFER_ROUTE}` + } + } +} as const; + +export default ROUTES; diff --git a/src/core/ui/animation/Checkmark.json b/src/core/ui/animation/Checkmark.json new file mode 100644 index 0000000..cb85bdc --- /dev/null +++ b/src/core/ui/animation/Checkmark.json @@ -0,0 +1,35721 @@ +{ + "v": "4.8.0", + "meta": {"g": "LottieFiles AE 3.0.2", "a": "", "k": "", "d": "", "tc": ""}, + "fr": 24, + "ip": 0, + "op": 71, + "w": 72, + "h": 72, + "nm": "Comp 1", + "ddd": 0, + "assets": [ + { + "id": "comp_0", + "layers": [ + { + "ddd": 0, + "ind": 1, + "ty": 4, + "nm": "check", + "sr": 1, + "ks": { + "o": {"a": 0, "k": 100, "ix": 11}, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": {"a": 0, "k": [406, 406, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.667, 0.667, 0.667], "y": [1, 1, 1]}, + "o": {"x": [0.333, 0.333, 0.333], "y": [0, 0, 0]}, + "t": 70.8, + "s": [100, 100, 100] + }, + {"t": 77.599609375, "s": [0, 0, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [0, 0], + [0, 0] + ], + "o": [ + [0, 0], + [0, 0], + [0, 0] + ], + "v": [ + [-82.5, 4.5], + [-31, 55], + [73, -52.5] + ], + "c": false + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "tm", + "s": {"a": 0, "k": 0, "ix": 1}, + "e": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [1], "y": [0.076]}, + "t": 24, + "s": [0] + }, + {"t": 34, "s": [100]} + ], + "ix": 2 + }, + "o": {"a": 0, "k": 0, "ix": 3}, + "m": 1, + "ix": 2, + "nm": "Trim Paths 1", + "mn": "ADBE Vector Filter - Trim", + "hd": false + }, + { + "ty": "st", + "c": {"a": 0, "k": [1, 1, 1, 1], "ix": 3}, + "o": {"a": 0, "k": 100, "ix": 4}, + "w": {"a": 0, "k": 30, "ix": 5}, + "lc": 2, + "lj": 2, + "bm": 0, + "nm": "Stroke 1", + "mn": "ADBE Vector Graphic - Stroke", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Shape 1", + "np": 3, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 78.400390625, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 2, + "ty": 4, + "nm": "Shape Layer 2", + "sr": 1, + "ks": { + "o": {"a": 0, "k": 100, "ix": 11}, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": {"a": 0, "k": [406, 407.86, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0, 0, 0.833], "y": [0.98, 0.98, 1]}, + "o": {"x": [0.656, 0.656, 0.167], "y": [0.872, 0.872, 0]}, + "t": 8, + "s": [0, 0, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1, 1, 1]}, + "o": {"x": [0.01, 0.01, 0.01], "y": [0, 0, 0]}, + "t": 24, + "s": [150, 150, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1, 1, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0, 0, 0]}, + "t": 70.8, + "s": [150, 150, 100] + }, + {"t": 77.599609375, "s": [0, 0, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": {"a": 0, "k": [236, 236], "ix": 2}, + "p": {"a": 0, "k": [0, 0], "ix": 3}, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [0.145098045468, 0.713725507259, 0.639215707779, 1], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, -3], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Ellipse 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 78.400390625, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 3, + "ty": 4, + "nm": "Shape Layer 1", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.626], "y": [0.729]}, + "o": {"x": [0.912], "y": [0.073]}, + "t": 30.4, + "s": [100] + }, + {"t": 47.599609375, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": {"a": 0, "k": [406, 407.86, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0, 0, 0.667], "y": [0.999, 0.999, 1]}, + "o": {"x": [0.477, 0.477, 0.333], "y": [0.587, 0.587, 0]}, + "t": 4, + "s": [0, 0, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1, 1, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0, 0, 0]}, + "t": 20, + "s": [150, 150, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1, 1, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0, 0, 0]}, + "t": 30.4, + "s": [150, 150, 100] + }, + {"t": 49.2001953125, "s": [210, 210, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": {"a": 0, "k": [236, 236], "ix": 2}, + "p": {"a": 0, "k": [0, 0], "ix": 3}, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "st", + "c": {"a": 0, "k": [1, 1, 1, 1], "ix": 3}, + "o": {"a": 0, "k": 100, "ix": 4}, + "w": {"a": 0, "k": 2, "ix": 5}, + "lc": 1, + "lj": 1, + "ml": 4, + "bm": 0, + "nm": "Stroke 1", + "mn": "ADBE Vector Graphic - Stroke", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [0.498039215803, 0.886274516582, 0.835294127464, 1], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, -3], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Ellipse 1", + "np": 3, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 96, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 4, + "ty": 0, + "nm": "Confetti 1", + "refId": "comp_1", + "sr": 1, + "ks": { + "o": {"a": 0, "k": 100, "ix": 11}, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": {"a": 0, "k": [406, 406, 0], "ix": 2}, + "a": {"a": 0, "k": [256, 256, 0], "ix": 1}, + "s": {"a": 0, "k": [163, 163, 100], "ix": 6} + }, + "ao": 0, + "w": 512, + "h": 512, + "ip": 29.2001953125, + "op": 77.2001953125, + "st": 29.2001953125, + "bm": 0 + } + ] + }, + { + "id": "comp_1", + "layers": [ + { + "ddd": 0, + "ind": 1, + "ty": 3, + "nm": "Null 3", + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": {"a": 0, "k": 260, "ix": 10}, + "p": {"a": 0, "k": [256, 256, 0], "ix": 2}, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [102, 102, 100], "ix": 6} + }, + "ao": 0, + "ip": 4, + "op": 48, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 2, + "ty": 4, + "nm": "Shape Layer 50", + "parent": 1, + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 11.2, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 15.2, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 32.8, + "s": [100] + }, + {"t": 45.599609375, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 487, "ix": 10}, + "p": {"a": 0, "k": [50, 50, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": {"a": 0, "k": [41, 41, 100], "ix": 6} + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [-19.362, 34.498], + [7.899, -25.433], + [37.607, 53.867], + [11.905, 108.592] + ], + "o": [ + [0, 0], + [42.457, -75.648], + [-9.025, 29.061], + [-47.221, -67.637], + [-3.807, -34.72] + ], + "v": [ + [1, 2], + [-48.536, -23.607], + [-76.476, -100.021], + [27.098, -130.112], + [-120.809, -222.715] + ], + "c": false + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "st", + "c": { + "a": 0, + "k": [0.494117647409, 0.827450990677, 0.129411771894, 1], + "ix": 3 + }, + "o": {"a": 0, "k": 100, "ix": 4}, + "w": { + "a": 0, + "k": 5, + "ix": 5, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = wiggle(5, 3);" + }, + "lc": 1, + "lj": 1, + "ml": 4, + "bm": 0, + "nm": "Stroke 1", + "mn": "ADBE Vector Graphic - Stroke", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Shape 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + }, + { + "ty": "tm", + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0], "y": [1]}, + "o": {"x": [0.139], "y": [0]}, + "t": 13.6, + "s": [0] + }, + {"t": 43.2001953125, "s": [100]} + ], + "ix": 1 + }, + "e": { + "a": 1, + "k": [ + { + "i": {"x": [0], "y": [1]}, + "o": {"x": [0.139], "y": [0]}, + "t": 11.2, + "s": [0] + }, + {"t": 39.2001953125, "s": [100]} + ], + "ix": 2 + }, + "o": {"a": 0, "k": 0, "ix": 3}, + "m": 1, + "ix": 2, + "nm": "Trim Paths 1", + "mn": "ADBE Vector Filter - Trim", + "hd": false + } + ], + "ip": 11.2001953125, + "op": 48, + "st": 11.2001953125, + "bm": 0 + }, + { + "ddd": 0, + "ind": 3, + "ty": 4, + "nm": "Shape Layer 49", + "parent": 1, + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 10.4, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 14.4, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 32, + "s": [100] + }, + {"t": 44.7998046875, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 353, "ix": 10}, + "p": {"a": 0, "k": [50, 50, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": {"a": 0, "k": [70, 70, 100], "ix": 6} + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [-14, 37], + [8.506, -58.529], + [28.328, 67.272], + [11.905, 108.592] + ], + "o": [ + [0, 0], + [9.966, -26.338], + [-12.365, 85.083], + [-32.013, -76.024], + [-3.807, -34.72] + ], + "v": [ + [1, 2], + [-48.536, -23.607], + [-76.476, -100.021], + [27.098, -130.112], + [-120.809, -222.715] + ], + "c": false + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "st", + "c": {"a": 0, "k": [0.728918373585, 0.113771438599, 1, 1], "ix": 3}, + "o": {"a": 0, "k": 100, "ix": 4}, + "w": { + "a": 0, + "k": 5, + "ix": 5, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = wiggle(5, 3);" + }, + "lc": 1, + "lj": 1, + "ml": 4, + "bm": 0, + "nm": "Stroke 1", + "mn": "ADBE Vector Graphic - Stroke", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Shape 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + }, + { + "ty": "tm", + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0], "y": [1]}, + "o": {"x": [0.139], "y": [0]}, + "t": 12.8, + "s": [0] + }, + {"t": 42.400390625, "s": [100]} + ], + "ix": 1 + }, + "e": { + "a": 1, + "k": [ + { + "i": {"x": [0], "y": [1]}, + "o": {"x": [0.139], "y": [0]}, + "t": 10.4, + "s": [0] + }, + {"t": 38.400390625, "s": [100]} + ], + "ix": 2 + }, + "o": {"a": 0, "k": 0, "ix": 3}, + "m": 1, + "ix": 2, + "nm": "Trim Paths 1", + "mn": "ADBE Vector Filter - Trim", + "hd": false + } + ], + "ip": 10.400390625, + "op": 48, + "st": 10.400390625, + "bm": 0 + }, + { + "ddd": 0, + "ind": 4, + "ty": 4, + "nm": "Shape Layer 48", + "parent": 1, + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 9.6, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 13.6, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 31.2, + "s": [100] + }, + {"t": 44, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 187, "ix": 10}, + "p": {"a": 0, "k": [50, 50, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": {"a": 0, "k": [70, 70, 100], "ix": 6} + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [-14, 37], + [8.254, -31.239], + [20.685, 70.001], + [17.795, 30.055] + ], + "o": [ + [0, 0], + [9.966, -26.338], + [-7.439, 28.154], + [-10.769, -36.442], + [-17.795, -30.055] + ], + "v": [ + [1, 2], + [2.692, -79.782], + [-49.416, -90.653], + [-14.589, -135.23], + [-105.31, -168.421] + ], + "c": false + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "st", + "c": {"a": 0, "k": [1, 0.897855639458, 0.113771438599, 1], "ix": 3}, + "o": {"a": 0, "k": 100, "ix": 4}, + "w": { + "a": 0, + "k": 5, + "ix": 5, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = wiggle(5, 3);" + }, + "lc": 1, + "lj": 1, + "ml": 4, + "bm": 0, + "nm": "Stroke 1", + "mn": "ADBE Vector Graphic - Stroke", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Shape 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + }, + { + "ty": "tm", + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0], "y": [1]}, + "o": {"x": [0.139], "y": [0]}, + "t": 12, + "s": [0] + }, + {"t": 41.599609375, "s": [100]} + ], + "ix": 1 + }, + "e": { + "a": 1, + "k": [ + { + "i": {"x": [0], "y": [1]}, + "o": {"x": [0.139], "y": [0]}, + "t": 9.6, + "s": [0] + }, + {"t": 37.599609375, "s": [100]} + ], + "ix": 2 + }, + "o": {"a": 0, "k": 0, "ix": 3}, + "m": 1, + "ix": 2, + "nm": "Trim Paths 1", + "mn": "ADBE Vector Filter - Trim", + "hd": false + } + ], + "ip": 9.599609375, + "op": 48, + "st": 9.599609375, + "bm": 0 + }, + { + "ddd": 0, + "ind": 5, + "ty": 4, + "nm": "Shape Layer 47", + "parent": 1, + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 8.8, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 12.8, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 30.4, + "s": [100] + }, + {"t": 43.2001953125, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 203, "ix": 10}, + "p": {"a": 0, "k": [50, 50, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": {"a": 0, "k": [58, 58, 100], "ix": 6} + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [-14, 37], + [-1, 38], + [35.009, -27.828], + [-11, 31] + ], + "o": [ + [0, 0], + [9.966, -26.338], + [1, -38], + [-39, 31], + [11, -31] + ], + "v": [ + [1, 2], + [48, -39], + [29, -112], + [136, -107], + [103, -176] + ], + "c": false + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "st", + "c": {"a": 0, "k": [1, 0.104197323322, 0.383229881525, 1], "ix": 3}, + "o": {"a": 0, "k": 100, "ix": 4}, + "w": { + "a": 0, + "k": 5, + "ix": 5, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = wiggle(5, 3);" + }, + "lc": 1, + "lj": 1, + "ml": 4, + "bm": 0, + "nm": "Stroke 1", + "mn": "ADBE Vector Graphic - Stroke", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Shape 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + }, + { + "ty": "tm", + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0], "y": [1]}, + "o": {"x": [0.139], "y": [0]}, + "t": 11.2, + "s": [0] + }, + {"t": 40.7998046875, "s": [100]} + ], + "ix": 1 + }, + "e": { + "a": 1, + "k": [ + { + "i": {"x": [0], "y": [1]}, + "o": {"x": [0.139], "y": [0]}, + "t": 8.8, + "s": [0] + }, + {"t": 36.7998046875, "s": [100]} + ], + "ix": 2 + }, + "o": {"a": 0, "k": 0, "ix": 3}, + "m": 1, + "ix": 2, + "nm": "Trim Paths 1", + "mn": "ADBE Vector Filter - Trim", + "hd": false + } + ], + "ip": 8.7998046875, + "op": 48, + "st": 8.7998046875, + "bm": 0 + }, + { + "ddd": 0, + "ind": 6, + "ty": 4, + "nm": "Shape Layer 46", + "parent": 1, + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 8, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 12, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 29.6, + "s": [100] + }, + {"t": 42.400390625, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": {"a": 0, "k": [50, 50, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [-14, 37], + [-1, 38], + [35.009, -27.828], + [-11, 31] + ], + "o": [ + [0, 0], + [9.966, -26.338], + [1, -38], + [-39, 31], + [11, -31] + ], + "v": [ + [1, 2], + [48, -39], + [29, -112], + [136, -107], + [103, -176] + ], + "c": false + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "st", + "c": { + "a": 0, + "k": [0.313725501299, 0.890196084976, 0.760784327984, 1], + "ix": 3 + }, + "o": {"a": 0, "k": 100, "ix": 4}, + "w": { + "a": 0, + "k": 5, + "ix": 5, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = wiggle(5, 3);" + }, + "lc": 1, + "lj": 1, + "ml": 4, + "bm": 0, + "nm": "Stroke 1", + "mn": "ADBE Vector Graphic - Stroke", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Shape 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + }, + { + "ty": "tm", + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0], "y": [1]}, + "o": {"x": [0.139], "y": [0]}, + "t": 10.4, + "s": [0] + }, + {"t": 40, "s": [100]} + ], + "ix": 1 + }, + "e": { + "a": 1, + "k": [ + { + "i": {"x": [0], "y": [1]}, + "o": {"x": [0.139], "y": [0]}, + "t": 8, + "s": [0] + }, + {"t": 36, "s": [100]} + ], + "ix": 2 + }, + "o": {"a": 0, "k": 0, "ix": 3}, + "m": 1, + "ix": 2, + "nm": "Trim Paths 1", + "mn": "ADBE Vector Filter - Trim", + "hd": false + } + ], + "ip": 8, + "op": 48, + "st": 8, + "bm": 0 + }, + { + "ddd": 0, + "ind": 7, + "ty": 4, + "nm": "Shape Layer 45", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 7.2, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 11.2, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 28.8, + "s": [100] + }, + {"t": 41.599609375, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 487, "ix": 10}, + "p": {"a": 0, "k": [256, 256, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": {"a": 0, "k": [41, 41, 100], "ix": 6} + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [-19.362, 34.498], + [7.899, -25.433], + [37.607, 53.867], + [11.905, 108.592] + ], + "o": [ + [0, 0], + [42.457, -75.648], + [-9.025, 29.061], + [-47.221, -67.637], + [-3.807, -34.72] + ], + "v": [ + [1, 2], + [-48.536, -23.607], + [-76.476, -100.021], + [27.098, -130.112], + [-120.809, -222.715] + ], + "c": false + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "st", + "c": { + "a": 0, + "k": [0.494117647409, 0.827450990677, 0.129411771894, 1], + "ix": 3 + }, + "o": {"a": 0, "k": 100, "ix": 4}, + "w": { + "a": 0, + "k": 5, + "ix": 5, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = wiggle(5, 3);" + }, + "lc": 1, + "lj": 1, + "ml": 4, + "bm": 0, + "nm": "Stroke 1", + "mn": "ADBE Vector Graphic - Stroke", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Shape 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + }, + { + "ty": "tm", + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0], "y": [1]}, + "o": {"x": [0.139], "y": [0]}, + "t": 9.6, + "s": [0] + }, + {"t": 39.2001953125, "s": [100]} + ], + "ix": 1 + }, + "e": { + "a": 1, + "k": [ + { + "i": {"x": [0], "y": [1]}, + "o": {"x": [0.139], "y": [0]}, + "t": 7.2, + "s": [0] + }, + {"t": 35.2001953125, "s": [100]} + ], + "ix": 2 + }, + "o": {"a": 0, "k": 0, "ix": 3}, + "m": 1, + "ix": 2, + "nm": "Trim Paths 1", + "mn": "ADBE Vector Filter - Trim", + "hd": false + } + ], + "ip": 7.2001953125, + "op": 48, + "st": 7.2001953125, + "bm": 0 + }, + { + "ddd": 0, + "ind": 8, + "ty": 4, + "nm": "Shape Layer 43", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 6.4, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 10.4, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 28, + "s": [100] + }, + {"t": 40.7998046875, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 353, "ix": 10}, + "p": {"a": 0, "k": [256, 256, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": {"a": 0, "k": [70, 70, 100], "ix": 6} + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [-14, 37], + [8.506, -58.529], + [28.328, 67.272], + [11.905, 108.592] + ], + "o": [ + [0, 0], + [9.966, -26.338], + [-12.365, 85.083], + [-32.013, -76.024], + [-3.807, -34.72] + ], + "v": [ + [1, 2], + [-48.536, -23.607], + [-76.476, -100.021], + [27.098, -130.112], + [-120.809, -222.715] + ], + "c": false + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "st", + "c": {"a": 0, "k": [0.728918373585, 0.113771438599, 1, 1], "ix": 3}, + "o": {"a": 0, "k": 100, "ix": 4}, + "w": { + "a": 0, + "k": 5, + "ix": 5, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = wiggle(5, 3);" + }, + "lc": 1, + "lj": 1, + "ml": 4, + "bm": 0, + "nm": "Stroke 1", + "mn": "ADBE Vector Graphic - Stroke", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Shape 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + }, + { + "ty": "tm", + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0], "y": [1]}, + "o": {"x": [0.139], "y": [0]}, + "t": 8.8, + "s": [0] + }, + {"t": 38.400390625, "s": [100]} + ], + "ix": 1 + }, + "e": { + "a": 1, + "k": [ + { + "i": {"x": [0], "y": [1]}, + "o": {"x": [0.139], "y": [0]}, + "t": 6.4, + "s": [0] + }, + {"t": 34.400390625, "s": [100]} + ], + "ix": 2 + }, + "o": {"a": 0, "k": 0, "ix": 3}, + "m": 1, + "ix": 2, + "nm": "Trim Paths 1", + "mn": "ADBE Vector Filter - Trim", + "hd": false + } + ], + "ip": 6.400390625, + "op": 48, + "st": 6.400390625, + "bm": 0 + }, + { + "ddd": 0, + "ind": 9, + "ty": 4, + "nm": "Shape Layer 42", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 5.6, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 9.6, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 27.2, + "s": [100] + }, + {"t": 40, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 187, "ix": 10}, + "p": {"a": 0, "k": [256, 256, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": {"a": 0, "k": [70, 70, 100], "ix": 6} + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [-14, 37], + [8.254, -31.239], + [20.685, 70.001], + [17.795, 30.055] + ], + "o": [ + [0, 0], + [9.966, -26.338], + [-7.439, 28.154], + [-10.769, -36.442], + [-17.795, -30.055] + ], + "v": [ + [1, 2], + [2.692, -79.782], + [-49.416, -90.653], + [-14.589, -135.23], + [-105.31, -168.421] + ], + "c": false + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "st", + "c": {"a": 0, "k": [1, 0.897855639458, 0.113771438599, 1], "ix": 3}, + "o": {"a": 0, "k": 100, "ix": 4}, + "w": { + "a": 0, + "k": 5, + "ix": 5, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = wiggle(5, 3);" + }, + "lc": 1, + "lj": 1, + "ml": 4, + "bm": 0, + "nm": "Stroke 1", + "mn": "ADBE Vector Graphic - Stroke", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Shape 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + }, + { + "ty": "tm", + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0], "y": [1]}, + "o": {"x": [0.139], "y": [0]}, + "t": 8, + "s": [0] + }, + {"t": 37.599609375, "s": [100]} + ], + "ix": 1 + }, + "e": { + "a": 1, + "k": [ + { + "i": {"x": [0], "y": [1]}, + "o": {"x": [0.139], "y": [0]}, + "t": 5.6, + "s": [0] + }, + {"t": 33.599609375, "s": [100]} + ], + "ix": 2 + }, + "o": {"a": 0, "k": 0, "ix": 3}, + "m": 1, + "ix": 2, + "nm": "Trim Paths 1", + "mn": "ADBE Vector Filter - Trim", + "hd": false + } + ], + "ip": 5.599609375, + "op": 48, + "st": 5.599609375, + "bm": 0 + }, + { + "ddd": 0, + "ind": 10, + "ty": 4, + "nm": "Shape Layer 44", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 4.8, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 8.8, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 26.4, + "s": [100] + }, + {"t": 39.2001953125, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 203, "ix": 10}, + "p": {"a": 0, "k": [256, 256, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": {"a": 0, "k": [58, 58, 100], "ix": 6} + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [-14, 37], + [-1, 38], + [35.009, -27.828], + [-11, 31] + ], + "o": [ + [0, 0], + [9.966, -26.338], + [1, -38], + [-39, 31], + [11, -31] + ], + "v": [ + [1, 2], + [48, -39], + [29, -112], + [136, -107], + [103, -176] + ], + "c": false + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "st", + "c": {"a": 0, "k": [1, 0.104197323322, 0.383229881525, 1], "ix": 3}, + "o": {"a": 0, "k": 100, "ix": 4}, + "w": { + "a": 0, + "k": 5, + "ix": 5, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = wiggle(5, 3);" + }, + "lc": 1, + "lj": 1, + "ml": 4, + "bm": 0, + "nm": "Stroke 1", + "mn": "ADBE Vector Graphic - Stroke", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Shape 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + }, + { + "ty": "tm", + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0], "y": [1]}, + "o": {"x": [0.139], "y": [0]}, + "t": 7.2, + "s": [0] + }, + {"t": 36.7998046875, "s": [100]} + ], + "ix": 1 + }, + "e": { + "a": 1, + "k": [ + { + "i": {"x": [0], "y": [1]}, + "o": {"x": [0.139], "y": [0]}, + "t": 4.8, + "s": [0] + }, + {"t": 32.7998046875, "s": [100]} + ], + "ix": 2 + }, + "o": {"a": 0, "k": 0, "ix": 3}, + "m": 1, + "ix": 2, + "nm": "Trim Paths 1", + "mn": "ADBE Vector Filter - Trim", + "hd": false + } + ], + "ip": 4.7998046875, + "op": 48, + "st": 4.7998046875, + "bm": 0 + }, + { + "ddd": 0, + "ind": 11, + "ty": 4, + "nm": "Shape Layer 41", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 4, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 8, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 25.6, + "s": [100] + }, + {"t": 38.400390625, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": {"a": 0, "k": [256, 256, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [-14, 37], + [-1, 38], + [35.009, -27.828], + [-11, 31] + ], + "o": [ + [0, 0], + [9.966, -26.338], + [1, -38], + [-39, 31], + [11, -31] + ], + "v": [ + [1, 2], + [48, -39], + [29, -112], + [136, -107], + [103, -176] + ], + "c": false + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "st", + "c": { + "a": 0, + "k": [0.313725501299, 0.890196084976, 0.760784327984, 1], + "ix": 3 + }, + "o": {"a": 0, "k": 100, "ix": 4}, + "w": { + "a": 0, + "k": 5, + "ix": 5, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = wiggle(5, 3);" + }, + "lc": 1, + "lj": 1, + "ml": 4, + "bm": 0, + "nm": "Stroke 1", + "mn": "ADBE Vector Graphic - Stroke", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Shape 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + }, + { + "ty": "tm", + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0], "y": [1]}, + "o": {"x": [0.139], "y": [0]}, + "t": 6.4, + "s": [0] + }, + {"t": 36, "s": [100]} + ], + "ix": 1 + }, + "e": { + "a": 1, + "k": [ + { + "i": {"x": [0], "y": [1]}, + "o": {"x": [0.139], "y": [0]}, + "t": 4, + "s": [0] + }, + {"t": 32, "s": [100]} + ], + "ix": 2 + }, + "o": {"a": 0, "k": 0, "ix": 3}, + "m": 1, + "ix": 2, + "nm": "Trim Paths 1", + "mn": "ADBE Vector Filter - Trim", + "hd": false + } + ], + "ip": 4, + "op": 48, + "st": 4, + "bm": 0 + }, + { + "ddd": 0, + "ind": 12, + "ty": 4, + "nm": "Shape Layer 40", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 4.8, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 8.8, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 26.4, + "s": [100] + }, + {"t": 39.2001953125, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 92, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 4.8, + "s": [269.95, 307.113, 0], + "to": [-0.323, -0.36, 0], + "ti": [1.346, 1.541, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 5.6, + "s": [268.011, 304.951, 0], + "to": [-1.346, -1.541, 0], + "ti": [2.46, 3.542, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 6.4, + "s": [261.875, 297.864, 0], + "to": [-2.46, -3.542, 0], + "ti": [2.232, 5.312, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 7.2, + "s": [253.252, 283.701, 0], + "to": [-2.232, -5.312, 0], + "ti": [0.637, 5.627, 0] + }, + { + "i": {"x": 0.833, "y": 0.999}, + "o": {"x": 0.167, "y": 0.001}, + "t": 8, + "s": [248.481, 265.992, 0], + "to": [-0.637, -5.627, 0], + "ti": [-0.921, 4.788, 0] + }, + { + "i": {"x": 0.833, "y": 0.982}, + "o": {"x": 0.167, "y": 0.021}, + "t": 8.8, + "s": [249.431, 249.939, 0], + "to": [0.921, -4.788, 0], + "ti": [-1.796, 3.705, 0] + }, + { + "i": {"x": 0.833, "y": 0.954}, + "o": {"x": 0.167, "y": 0.054}, + "t": 9.6, + "s": [254.007, 237.262, 0], + "to": [1.796, -3.705, 0], + "ti": [-2.147, 2.784, 0] + }, + { + "i": {"x": 0.833, "y": 0.928}, + "o": {"x": 0.167, "y": 0.084}, + "t": 10.4, + "s": [260.206, 227.707, 0], + "to": [2.147, -2.784, 0], + "ti": [-2.218, 2.088, 0] + }, + { + "i": {"x": 0.833, "y": 0.905}, + "o": {"x": 0.167, "y": 0.108}, + "t": 11.2, + "s": [266.89, 220.559, 0], + "to": [2.218, -2.088, 0], + "ti": [-2.161, 1.578, 0] + }, + { + "i": {"x": 0.833, "y": 0.888}, + "o": {"x": 0.167, "y": 0.126}, + "t": 12, + "s": [273.513, 215.179, 0], + "to": [2.161, -1.578, 0], + "ti": [-2.053, 1.203, 0] + }, + { + "i": {"x": 0.833, "y": 0.875}, + "o": {"x": 0.167, "y": 0.139}, + "t": 12.8, + "s": [279.855, 211.089, 0], + "to": [2.053, -1.203, 0], + "ti": [-1.93, 0.918, 0] + }, + { + "i": {"x": 0.833, "y": 0.866}, + "o": {"x": 0.167, "y": 0.149}, + "t": 13.6, + "s": [285.832, 207.964, 0], + "to": [1.93, -0.918, 0], + "ti": [-1.801, 0.7, 0] + }, + { + "i": {"x": 0.833, "y": 0.858}, + "o": {"x": 0.167, "y": 0.156}, + "t": 14.4, + "s": [291.433, 205.582, 0], + "to": [1.801, -0.7, 0], + "ti": [-1.666, 0.538, 0] + }, + { + "i": {"x": 0.833, "y": 0.853}, + "o": {"x": 0.167, "y": 0.161}, + "t": 15.2, + "s": [296.641, 203.764, 0], + "to": [1.666, -0.538, 0], + "ti": [-1.53, 0.417, 0] + }, + { + "i": {"x": 0.833, "y": 0.851}, + "o": {"x": 0.167, "y": 0.165}, + "t": 16, + "s": [301.428, 202.354, 0], + "to": [1.53, -0.417, 0], + "ti": [-1.402, 0.32, 0] + }, + { + "i": {"x": 0.833, "y": 0.847}, + "o": {"x": 0.167, "y": 0.167}, + "t": 16.8, + "s": [305.818, 201.265, 0], + "to": [1.402, -0.32, 0], + "ti": [-1.283, 0.243, 0] + }, + { + "i": {"x": 0.833, "y": 0.845}, + "o": {"x": 0.167, "y": 0.171}, + "t": 17.6, + "s": [309.838, 200.433, 0], + "to": [1.283, -0.243, 0], + "ti": [-1.172, 0.18, 0] + }, + { + "i": {"x": 0.833, "y": 0.843}, + "o": {"x": 0.167, "y": 0.171}, + "t": 18.4, + "s": [313.514, 199.809, 0], + "to": [1.172, -0.18, 0], + "ti": [-1.068, 0.128, 0] + }, + { + "i": {"x": 0.833, "y": 0.843}, + "o": {"x": 0.167, "y": 0.173}, + "t": 19.2, + "s": [316.868, 199.355, 0], + "to": [1.068, -0.128, 0], + "ti": [-0.97, 0.084, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.175}, + "t": 20, + "s": [319.92, 199.043, 0], + "to": [0.97, -0.084, 0], + "ti": [-0.879, 0.048, 0] + }, + { + "i": {"x": 0.833, "y": 0.842}, + "o": {"x": 0.167, "y": 0.176}, + "t": 20.8, + "s": [322.69, 198.85, 0], + "to": [0.879, -0.048, 0], + "ti": [-0.793, 0.017, 0] + }, + { + "i": {"x": 0.833, "y": 0.842}, + "o": {"x": 0.167, "y": 0.176}, + "t": 21.6, + "s": [325.194, 198.756, 0], + "to": [0.793, -0.017, 0], + "ti": [-0.712, -0.009, 0] + }, + { + "i": {"x": 0.833, "y": 0.842}, + "o": {"x": 0.167, "y": 0.176}, + "t": 22.4, + "s": [327.449, 198.747, 0], + "to": [0.712, 0.009, 0], + "ti": [-0.636, -0.03, 0] + }, + { + "i": {"x": 0.833, "y": 0.843}, + "o": {"x": 0.167, "y": 0.177}, + "t": 23.2, + "s": [329.469, 198.808, 0], + "to": [0.636, 0.03, 0], + "ti": [-0.564, -0.048, 0] + }, + { + "i": {"x": 0.833, "y": 0.845}, + "o": {"x": 0.167, "y": 0.175}, + "t": 24, + "s": [331.266, 198.928, 0], + "to": [0.564, 0.048, 0], + "ti": [-0.497, -0.063, 0] + }, + { + "i": {"x": 0.833, "y": 0.848}, + "o": {"x": 0.167, "y": 0.174}, + "t": 24.8, + "s": [332.854, 199.098, 0], + "to": [0.497, 0.063, 0], + "ti": [-0.434, -0.076, 0] + }, + { + "i": {"x": 0.833, "y": 0.85}, + "o": {"x": 0.167, "y": 0.171}, + "t": 25.6, + "s": [334.247, 199.309, 0], + "to": [0.434, 0.076, 0], + "ti": [-0.375, -0.085, 0] + }, + { + "i": {"x": 0.833, "y": 0.855}, + "o": {"x": 0.167, "y": 0.167}, + "t": 26.4, + "s": [335.457, 199.552, 0], + "to": [0.375, 0.085, 0], + "ti": [-0.32, -0.092, 0] + }, + { + "i": {"x": 0.833, "y": 0.861}, + "o": {"x": 0.167, "y": 0.163}, + "t": 27.2, + "s": [336.496, 199.819, 0], + "to": [0.32, 0.092, 0], + "ti": [-0.269, -0.097, 0] + }, + { + "i": {"x": 0.833, "y": 0.867}, + "o": {"x": 0.167, "y": 0.156}, + "t": 28, + "s": [337.376, 200.105, 0], + "to": [0.269, 0.097, 0], + "ti": [-0.221, -0.099, 0] + }, + { + "i": {"x": 0.833, "y": 0.878}, + "o": {"x": 0.167, "y": 0.145}, + "t": 28.8, + "s": [338.108, 200.401, 0], + "to": [0.221, 0.099, 0], + "ti": [-0.178, -0.1, 0] + }, + { + "i": {"x": 0.833, "y": 0.891}, + "o": {"x": 0.167, "y": 0.131}, + "t": 29.6, + "s": [338.704, 200.702, 0], + "to": [0.178, 0.1, 0], + "ti": [-0.138, -0.098, 0] + }, + { + "i": {"x": 0.833, "y": 0.909}, + "o": {"x": 0.167, "y": 0.111}, + "t": 30.4, + "s": [339.176, 200.999, 0], + "to": [0.138, 0.098, 0], + "ti": [-0.103, -0.094, 0] + }, + { + "i": {"x": 0.833, "y": 0.93}, + "o": {"x": 0.167, "y": 0.087}, + "t": 31.2, + "s": [339.534, 201.288, 0], + "to": [0.103, 0.094, 0], + "ti": [-0.071, -0.087, 0] + }, + { + "i": {"x": 0.833, "y": 0.954}, + "o": {"x": 0.167, "y": 0.057}, + "t": 32, + "s": [339.791, 201.562, 0], + "to": [0.071, 0.087, 0], + "ti": [-0.043, -0.079, 0] + }, + { + "i": {"x": 0.833, "y": 0.979}, + "o": {"x": 0.167, "y": 0.027}, + "t": 32.8, + "s": [339.958, 201.813, 0], + "to": [0.043, 0.079, 0], + "ti": [-0.02, -0.068, 0] + }, + { + "i": {"x": 0.833, "y": 0.997}, + "o": {"x": 0.167, "y": 0.004}, + "t": 33.6, + "s": [340.049, 202.035, 0], + "to": [0.02, 0.068, 0], + "ti": [0, -0.055, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [340.075, 202.222, 0], + "to": [0, 0.055, 0], + "ti": [0.014, -0.04, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 35.2, + "s": [340.051, 202.365, 0], + "to": [-0.014, 0.04, 0], + "ti": [0.025, -0.022, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36, + "s": [339.989, 202.459, 0], + "to": [-0.025, 0.022, 0], + "ti": [0.024, -0.002, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36.8, + "s": [339.903, 202.496, 0], + "to": [-0.024, 0.002, 0], + "ti": [0.008, 0.02, 0] + }, + { + "i": {"x": 0.833, "y": 0.995}, + "o": {"x": 0.167, "y": 0.003}, + "t": 37.6, + "s": [339.844, 202.469, 0], + "to": [-0.008, -0.02, 0], + "ti": [-0.011, 0.042, 0] + }, + { + "i": {"x": 0.833, "y": 0.983}, + "o": {"x": 0.167, "y": 0.013}, + "t": 38.4, + "s": [339.858, 202.373, 0], + "to": [0.011, -0.042, 0], + "ti": [-0.012, 0.057, 0] + }, + { + "i": {"x": 0.833, "y": 0.998}, + "o": {"x": 0.167, "y": 0.002}, + "t": 39.2, + "s": [339.908, 202.219, 0], + "to": [0.012, -0.057, 0], + "ti": [-0.001, 0.066, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40, + "s": [339.927, 202.033, 0], + "to": [0.001, -0.066, 0], + "ti": [0.008, 0.072, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40.8, + "s": [339.916, 201.823, 0], + "to": [-0.008, -0.072, 0], + "ti": [0.017, 0.076, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 41.6, + "s": [339.877, 201.599, 0], + "to": [-0.017, -0.076, 0], + "ti": [0.026, 0.078, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 42.4, + "s": [339.812, 201.365, 0], + "to": [-0.026, -0.078, 0], + "ti": [0.033, 0.078, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 43.2, + "s": [339.723, 201.128, 0], + "to": [-0.033, -0.078, 0], + "ti": [0.04, 0.076, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44, + "s": [339.613, 200.895, 0], + "to": [-0.04, -0.076, 0], + "ti": [0.046, 0.073, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44.8, + "s": [339.484, 200.67, 0], + "to": [-0.046, -0.073, 0], + "ti": [0.051, 0.068, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 45.6, + "s": [339.339, 200.457, 0], + "to": [-0.051, -0.068, 0], + "ti": [0.055, 0.062, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 46.4, + "s": [339.179, 200.262, 0], + "to": [-0.055, -0.062, 0], + "ti": [0.029, 0.029, 0] + }, + {"t": 47.2001953125, "s": [339.007, 200.087, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.27, 0.902, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 4.8, + "s": [140.028, 87.797, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.945, 4.382, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.064, 0.568, 0]}, + "t": 5.6, + "s": [149.724, 81.426, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.242, 0.938, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.158, 0.081, 0]}, + "t": 6.4, + "s": [108.654, 80.328, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.932, 1.096, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.062, -0.235, 0]}, + "t": 7.2, + "s": [122.85, 125.952, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.849, 0.986, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.361, 0.045, 0]}, + "t": 8, + "s": [67.435, 113.999, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.46, 0.786, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.186, -0.016, 0]}, + "t": 8.8, + "s": [77.828, 139.764, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.921, 0.918, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.099, 0.136, 0]}, + "t": 9.6, + "s": [86.275, 118.232, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.039, -1.478, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.604, -4.076, 0]}, + "t": 10.4, + "s": [132.517, 84.447, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.895, 1.074, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.091, 0.086, 0]}, + "t": 11.2, + "s": [130.233, 85.124, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.337, 1.045, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.399, 0.039, 0]}, + "t": 12, + "s": [104.061, 104.576, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.903, 0.992, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.067, 0.029, 0]}, + "t": 12.8, + "s": [97.155, 67.886, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.653, 0.971, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.608, -0.009, 0]}, + "t": 13.6, + "s": [131.988, 124.186, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.86, 0.858, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.074, -0.045, 0]}, + "t": 14.4, + "s": [137.528, 73.357, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.036, 1.045, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.207, 0.201, 0]}, + "t": 15.2, + "s": [88.621, 106.456, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.926, 0.915, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.025, 0.029, 0]}, + "t": 16, + "s": [55.617, 129.849, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.262, 4.965, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.634, 4.995, 0]}, + "t": 16.8, + "s": [102.914, 93.756, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.946, 0.946, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.094, 0.082, 0]}, + "t": 17.6, + "s": [97.417, 93.144, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.703, 0.499, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.154, -0.157, 0]}, + "t": 18.4, + "s": [54.264, 122.898, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.998, 0.898, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.116, 0.1, 0]}, + "t": 19.2, + "s": [69.385, 112.598, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.949, 1.263, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.002, 0.458, 0]}, + "t": 20, + "s": [108.191, 60.937, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.912, 0.891, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.135, 0.063, 0]}, + "t": 20.8, + "s": [70.4, 49.44, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.585, 0.999, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.487, 0.354, 0]}, + "t": 21.6, + "s": [84.854, 97.16, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.234, 0.72, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.104, -0.001, 0]}, + "t": 22.4, + "s": [85.713, 111.857, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.975, 0.919, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.061, 0.119, 0]}, + "t": 23.2, + "s": [89.136, 97.385, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.375, 0.152, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.036, -3.189, 0]}, + "t": 24, + "s": [76.083, 63.267, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.021, 0.8, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.068, 0.092, 0]}, + "t": 24.8, + "s": [85.219, 64.136, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.877, 1.035, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.017, 0.143, 0]}, + "t": 25.6, + "s": [34.985, 72.111, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.984, 0.913, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.257, 0.025, 0]}, + "t": 26.4, + "s": [97.846, 83.275, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.901, 2.92, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.02, 2.258, 0]}, + "t": 27.2, + "s": [127.941, 67.428, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.553, 0.981, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.536, 0.08, 0]}, + "t": 28, + "s": [103.695, 66.821, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.782, 0.701, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.102, -0.025, 0]}, + "t": 28.8, + "s": [99.227, 81.408, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.859, 0.804, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.135, 0.116, 0]}, + "t": 29.6, + "s": [79.727, 70.137, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.953, 0.952, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.203, 0.145, 0]}, + "t": 30.4, + "s": [48.153, 40.939, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.831, 0.706, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.106, -0.113, 0]}, + "t": 31.2, + "s": [26.225, 1.63, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.052, 0.962, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.164, 0.116, 0]}, + "t": 32, + "s": [35.878, 18.283, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.639, 0.832, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.032, -0.069, 0]}, + "t": 32.8, + "s": [45.795, 60.473, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.99, 0.924, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.108, 0.165, 0]}, + "t": 33.6, + "s": [29.734, 37.417, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.965, -0.589, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.011, -0.907, 0]}, + "t": 34.4, + "s": [-23.828, 13.866, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.893, 0.871, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.06, 0.088, 0]}, + "t": 35.2, + "s": [23.282, 15.847, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.57, 1.036, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.379, 0.235, 0]}, + "t": 36, + "s": [-4.081, 51.66, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.965, 0.796, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.073, 0.025, 0]}, + "t": 36.8, + "s": [-11.795, 71.385, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.84, 0.979, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.061, 0.141, 0]}, + "t": 37.6, + "s": [48.641, 43.137, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.129, 0.825, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.174, -0.028, 0]}, + "t": 38.4, + "s": [13.642, 2.267, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.979, 1.021, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.051, 0.159, 0]}, + "t": 39.2, + "s": [-18.389, 32.951, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.947, 0.864, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.028, 0.017, 0]}, + "t": 40, + "s": [63.189, 66.722, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.844, 1.094, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.146, 0.216, 0]}, + "t": 40.8, + "s": [2.261, 24.31, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.934, 0.977, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.179, 0.044, 0]}, + "t": 41.6, + "s": [24.372, -2.358, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.521, 0.999, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.314, -0.032, 0]}, + "t": 42.4, + "s": [43.66, 54.3, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.932, 0.99, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.101, -0.001, 0]}, + "t": 43.2, + "s": [39.61, 13.352, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.265, 0.893, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.359, -0.012, 0]}, + "t": 44, + "s": [20.359, 53.589, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.823, 0.847, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.094, 0.371, 0]}, + "t": 44.8, + "s": [23.988, 18.274, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.068, 1.058, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.157, 0.183, 0]}, + "t": 45.6, + "s": [52.384, 8.05, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.038, 0.034, 0]}, + "t": 46.4, + "s": [84.408, -0.484, 100] + }, + {"t": 47.2001953125, "s": [26.091, 14.017, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ty": "sr", + "sy": 2, + "d": 1, + "pt": {"a": 0, "k": 3, "ix": 3}, + "p": {"a": 0, "k": [6, 32], "ix": 4}, + "r": {"a": 0, "k": 0, "ix": 5}, + "or": {"a": 0, "k": 6.599, "ix": 7}, + "os": {"a": 0, "k": 0, "ix": 9}, + "ix": 1, + "nm": "Polystar Path 1", + "mn": "ADBE Vector Shape - Star", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [0.313725501299, 0.890196084976, 0.760784327984, 1], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-7.382, -25.677], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Polystar 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 4.7998046875, + "op": 48, + "st": 4.7998046875, + "bm": 0 + }, + { + "ddd": 0, + "ind": 13, + "ty": 4, + "nm": "Shape Layer 39", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 8.8, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 12.8, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 30.4, + "s": [100] + }, + {"t": 43.2001953125, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 92, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [266.709, 299.63, 0], + "to": [-0.015, 0.376, 0], + "ti": [0.204, -1.854, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [266.621, 301.887, 0], + "to": [-0.204, 1.854, 0], + "ti": [0.96, -4.091, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 10.4, + "s": [265.488, 310.754, 0], + "to": [-0.96, 4.091, 0], + "ti": [2.202, -5.284, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 11.2, + "s": [260.859, 326.432, 0], + "to": [-2.202, 5.284, 0], + "ti": [3.145, -4.688, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12, + "s": [252.276, 342.456, 0], + "to": [-3.145, 4.688, 0], + "ti": [3.441, -3.397, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12.8, + "s": [241.99, 354.561, 0], + "to": [-3.441, 3.397, 0], + "ti": [3.35, -2.293, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 13.6, + "s": [231.629, 362.84, 0], + "to": [-3.35, 2.293, 0], + "ti": [3.107, -1.507, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 14.4, + "s": [221.889, 368.32, 0], + "to": [-3.107, 1.507, 0], + "ti": [2.823, -0.973, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 15.2, + "s": [212.988, 371.885, 0], + "to": [-2.823, 0.973, 0], + "ti": [2.545, -0.61, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16, + "s": [204.948, 374.155, 0], + "to": [-2.545, 0.61, 0], + "ti": [2.287, -0.361, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16.8, + "s": [197.719, 375.542, 0], + "to": [-2.287, 0.361, 0], + "ti": [2.057, -0.189, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 17.6, + "s": [191.223, 376.321, 0], + "to": [-2.057, 0.189, 0], + "ti": [1.855, -0.069, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [185.374, 376.678, 0], + "to": [-1.855, 0.069, 0], + "ti": [1.678, 0.016, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [180.091, 376.736, 0], + "to": [-1.678, -0.016, 0], + "ti": [1.52, 0.078, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20, + "s": [175.308, 376.58, 0], + "to": [-1.52, -0.078, 0], + "ti": [1.379, 0.122, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [170.97, 376.27, 0], + "to": [-1.379, -0.122, 0], + "ti": [1.252, 0.155, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 21.6, + "s": [167.033, 375.845, 0], + "to": [-1.252, -0.155, 0], + "ti": [1.137, 0.18, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 22.4, + "s": [163.458, 375.337, 0], + "to": [-1.137, -0.18, 0], + "ti": [1.031, 0.198, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 23.2, + "s": [160.214, 374.766, 0], + "to": [-1.031, -0.198, 0], + "ti": [0.933, 0.212, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24, + "s": [157.274, 374.147, 0], + "to": [-0.933, -0.212, 0], + "ti": [0.843, 0.223, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24.8, + "s": [154.615, 373.492, 0], + "to": [-0.843, -0.223, 0], + "ti": [0.758, 0.232, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 25.6, + "s": [152.218, 372.807, 0], + "to": [-0.758, -0.232, 0], + "ti": [0.683, 0.239, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26.4, + "s": [150.067, 372.098, 0], + "to": [-0.683, -0.239, 0], + "ti": [0.619, 0.242, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 27.2, + "s": [148.12, 371.372, 0], + "to": [-0.619, -0.242, 0], + "ti": [0.56, 0.239, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28, + "s": [146.355, 370.647, 0], + "to": [-0.56, -0.239, 0], + "ti": [0.506, 0.232, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28.8, + "s": [144.758, 369.937, 0], + "to": [-0.506, -0.232, 0], + "ti": [0.454, 0.219, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 29.6, + "s": [143.32, 369.258, 0], + "to": [-0.454, -0.219, 0], + "ti": [0.406, 0.203, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 30.4, + "s": [142.032, 368.621, 0], + "to": [-0.406, -0.203, 0], + "ti": [0.36, 0.184, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 31.2, + "s": [140.885, 368.038, 0], + "to": [-0.36, -0.184, 0], + "ti": [0.317, 0.162, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32, + "s": [139.871, 367.517, 0], + "to": [-0.317, -0.162, 0], + "ti": [0.277, 0.138, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [138.982, 367.066, 0], + "to": [-0.277, -0.138, 0], + "ti": [0.238, 0.111, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [138.211, 366.692, 0], + "to": [-0.238, -0.111, 0], + "ti": [0.201, 0.083, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [137.554, 366.399, 0], + "to": [-0.201, -0.083, 0], + "ti": [0.166, 0.055, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 35.2, + "s": [137.005, 366.191, 0], + "to": [-0.166, -0.055, 0], + "ti": [0.132, 0.025, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36, + "s": [136.559, 366.071, 0], + "to": [-0.132, -0.025, 0], + "ti": [0.1, -0.005, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36.8, + "s": [136.211, 366.04, 0], + "to": [-0.1, 0.005, 0], + "ti": [0.069, -0.034, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 37.6, + "s": [135.959, 366.098, 0], + "to": [-0.069, 0.034, 0], + "ti": [0.039, -0.063, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 38.4, + "s": [135.797, 366.244, 0], + "to": [-0.039, 0.063, 0], + "ti": [0.011, -0.091, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 39.2, + "s": [135.723, 366.476, 0], + "to": [-0.011, 0.091, 0], + "ti": [-0.016, -0.118, 0] + }, + { + "i": {"x": 0.833, "y": 0.991}, + "o": {"x": 0.167, "y": 0.007}, + "t": 40, + "s": [135.732, 366.79, 0], + "to": [0.016, 0.118, 0], + "ti": [-0.036, -0.141, 0] + }, + { + "i": {"x": 0.833, "y": 0.987}, + "o": {"x": 0.167, "y": 0.012}, + "t": 40.8, + "s": [135.82, 367.181, 0], + "to": [0.036, 0.141, 0], + "ti": [-0.044, -0.159, 0] + }, + { + "i": {"x": 0.833, "y": 0.988}, + "o": {"x": 0.167, "y": 0.011}, + "t": 41.6, + "s": [135.95, 367.634, 0], + "to": [0.044, 0.159, 0], + "ti": [-0.046, -0.173, 0] + }, + { + "i": {"x": 0.833, "y": 0.989}, + "o": {"x": 0.167, "y": 0.01}, + "t": 42.4, + "s": [136.085, 368.134, 0], + "to": [0.046, 0.173, 0], + "ti": [-0.047, -0.184, 0] + }, + { + "i": {"x": 0.833, "y": 0.99}, + "o": {"x": 0.167, "y": 0.009}, + "t": 43.2, + "s": [136.223, 368.671, 0], + "to": [0.047, 0.184, 0], + "ti": [-0.048, -0.193, 0] + }, + { + "i": {"x": 0.833, "y": 0.99}, + "o": {"x": 0.167, "y": 0.009}, + "t": 44, + "s": [136.365, 369.239, 0], + "to": [0.048, 0.193, 0], + "ti": [-0.048, -0.197, 0] + }, + { + "i": {"x": 0.833, "y": 0.991}, + "o": {"x": 0.167, "y": 0.009}, + "t": 44.8, + "s": [136.509, 369.827, 0], + "to": [0.048, 0.197, 0], + "ti": [-0.048, -0.198, 0] + }, + { + "i": {"x": 0.833, "y": 0.991}, + "o": {"x": 0.167, "y": 0.009}, + "t": 45.6, + "s": [136.653, 370.423, 0], + "to": [0.048, 0.198, 0], + "ti": [-0.047, -0.195, 0] + }, + { + "i": {"x": 0.833, "y": 0.991}, + "o": {"x": 0.167, "y": 0.009}, + "t": 46.4, + "s": [136.796, 371.017, 0], + "to": [0.047, 0.195, 0], + "ti": [-0.023, -0.096, 0] + }, + {"t": 47.2001953125, "s": [136.937, 371.594, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.877, 0.953, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 8.8, + "s": [59.343, 96.124, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.969, 0.832, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.259, -0.107, 0]}, + "t": 9.6, + "s": [89.744, 43.042, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.861, 1.087, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.05, 0.166, 0]}, + "t": 10.4, + "s": [104.203, 66.307, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.424, 0.974, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.208, 0.043, 0]}, + "t": 11.2, + "s": [95.197, 89.821, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.819, 0.904, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.07, -0.039, 0]}, + "t": 12, + "s": [89.153, 41.816, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.993, 0.548, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.154, 0.617, 0]}, + "t": 12.8, + "s": [125.946, 74.556, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.815, 0.926, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.008, 0.102, 0]}, + "t": 13.6, + "s": [169.121, 79.673, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.937, 1.513, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.152, -0.669, 0]}, + "t": 14.4, + "s": [129.751, 102.297, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.747, 1.071, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.266, 0.072, 0]}, + "t": 15.2, + "s": [81.726, 99.791, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.055, 0.899, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.124, 0.038, 0]}, + "t": 16, + "s": [93.197, 117.733, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.922, 1.324, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.033, 0.474, 0]}, + "t": 16.8, + "s": [116.588, 84.536, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.472, 1.053, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.18, 0.066, 0]}, + "t": 17.6, + "s": [77.774, 77.458, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.932, 0.902, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.099, 0.033, 0]}, + "t": 18.4, + "s": [80.336, 112.065, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.026, 1.108, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.364, 0.57, 0]}, + "t": 19.2, + "s": [93.979, 55.33, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.832, 0.728, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.02, 0.047, 0]}, + "t": 20, + "s": [91.437, 45.624, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.069, 0.952, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.076, 0.12, 0]}, + "t": 20.8, + "s": [94.777, 67.955, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.954, 0.9, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.038, -0.116, 0]}, + "t": 21.6, + "s": [58.109, 118.474, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.954, 0.352, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.102, 0.493, 0]}, + "t": 22.4, + "s": [125.074, 97.355, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.408, 0.998, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.104, 0.096, 0]}, + "t": 23.2, + "s": [95.015, 93.056, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.982, 0.922, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.069, -0.002, 0]}, + "t": 24, + "s": [108.364, 63.932, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.838, -0.683, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.022, -1.218, 0]}, + "t": 24.8, + "s": [29.719, 92.263, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.943, 0.975, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.172, 0.088, 0]}, + "t": 25.6, + "s": [91.786, 90.449, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.84, 0.834, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.177, -0.036, 0]}, + "t": 26.4, + "s": [150.239, 55.635, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.842, 0.888, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.174, 0.167, 0]}, + "t": 27.2, + "s": [131.528, 79.867, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.948, 1.053, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.177, 0.326, 0]}, + "t": 28, + "s": [114.424, 104, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.464, 0.726, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.141, 0.032, 0]}, + "t": 28.8, + "s": [99.134, 112.3, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.912, 0.762, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.071, 0.12, 0]}, + "t": 29.6, + "s": [104.825, 98.77, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.398, 1.006, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.54, 0.128, 0]}, + "t": 30.4, + "s": [67.48, 67.824, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.924, 0.877, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.069, 0.006, 0]}, + "t": 31.2, + "s": [65.344, 10.519, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-3.207, 1.093, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.911, 0.258, 0]}, + "t": 32, + "s": [77.671, 71.977, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.93, 0.905, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.085, 0.044, 0]}, + "t": 32.8, + "s": [76.639, 101.368, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.96, 1.238, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.443, 0.681, 0]}, + "t": 33.6, + "s": [25.532, 39.221, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.134, 0.942, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.077, 0.062, 0]}, + "t": 34.4, + "s": [33.627, 30.543, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.683, 0.714, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.051, -0.194, 0]}, + "t": 35.2, + "s": [29.417, 64.046, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.008, 0.948, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.113, 0.118, 0]}, + "t": 36, + "s": [40.374, 53.993, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.787, 1.36, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.007, -0.137, 0]}, + "t": 36.8, + "s": [71.134, 29.6, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.078, 1.002, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.137, 0.068, 0]}, + "t": 37.6, + "s": [37.38, 38.828, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.948, 0.937, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.04, 0.002, 0]}, + "t": 38.4, + "s": [-15.322, -10.291, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.912, 0.695, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.139, -0.254, 0]}, + "t": 39.2, + "s": [86.713, 39.937, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.314, 1.014, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.669, 0.115, 0]}, + "t": 40, + "s": [48.493, 27.546, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.73, 0.854, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.066, 0.012, 0]}, + "t": 40.8, + "s": [46.484, -5.44, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.035, 0.884, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.12, 0.194, 0]}, + "t": 41.6, + "s": [56.051, 33.097, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.934, 1.27, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.025, 0.299, 0]}, + "t": 42.4, + "s": [77.513, 62.169, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.866, 0.851, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.324, 0.064, 0]}, + "t": 43.2, + "s": [46.909, 73.396, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.037, 0.912, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.222, 0.188, 0]}, + "t": 44, + "s": [53.173, 25.847, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.024, 1.423, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.091, 1.71, 0]}, + "t": 44.8, + "s": [56.946, -11.873, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.891, 0.665, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.019, 0.07, 0]}, + "t": 45.6, + "s": [96.787, -13.805, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.356, 0.111, 0]}, + "t": 46.4, + "s": [45.548, -2.059, 100] + }, + {"t": 47.2001953125, "s": [29.917, 33.378, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ty": "sr", + "sy": 2, + "d": 1, + "pt": {"a": 0, "k": 3, "ix": 3}, + "p": {"a": 0, "k": [6, 32], "ix": 4}, + "r": {"a": 0, "k": 0, "ix": 5}, + "or": {"a": 0, "k": 6.599, "ix": 7}, + "os": {"a": 0, "k": 0, "ix": 9}, + "ix": 1, + "nm": "Polystar Path 1", + "mn": "ADBE Vector Shape - Star", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [0.167325377464, 0.716982424259, 1, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-7.382, -25.677], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Polystar 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 8.7998046875, + "op": 48, + "st": 8.7998046875, + "bm": 0 + }, + { + "ddd": 0, + "ind": 14, + "ty": 4, + "nm": "Shape Layer 38", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 5.6, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 9.6, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 27.2, + "s": [100] + }, + {"t": 40, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 92, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 0.643}, + "o": {"x": 0.167, "y": 0.146}, + "t": 5.6, + "s": [262.436, 299.331, 0], + "to": [0.489, -0.187, 0], + "ti": [-2.348, 1.046, 0] + }, + { + "i": {"x": 0.833, "y": 0.806}, + "o": {"x": 0.167, "y": 0.086}, + "t": 6.4, + "s": [265.373, 298.21, 0], + "to": [2.348, -1.046, 0], + "ti": [-5.031, 2.854, 0] + }, + { + "i": {"x": 0.833, "y": 0.874}, + "o": {"x": 0.167, "y": 0.092}, + "t": 7.2, + "s": [276.523, 293.055, 0], + "to": [5.031, -2.854, 0], + "ti": [-6.175, 4.882, 0] + }, + { + "i": {"x": 0.833, "y": 0.919}, + "o": {"x": 0.167, "y": 0.082}, + "t": 8, + "s": [295.56, 281.084, 0], + "to": [6.175, -4.882, 0], + "ti": [-4.919, 5.974, 0] + }, + { + "i": {"x": 0.833, "y": 0.957}, + "o": {"x": 0.167, "y": 0.049}, + "t": 8.8, + "s": [313.573, 263.763, 0], + "to": [4.919, -5.974, 0], + "ti": [-2.793, 5.995, 0] + }, + { + "i": {"x": 0.833, "y": 0.987}, + "o": {"x": 0.167, "y": 0.015}, + "t": 9.6, + "s": [325.076, 245.24, 0], + "to": [2.793, -5.995, 0], + "ti": [-0.958, 5.467, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 10.4, + "s": [330.333, 227.794, 0], + "to": [0.958, -5.467, 0], + "ti": [0.382, 4.708, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 11.2, + "s": [330.823, 212.44, 0], + "to": [-0.382, -4.708, 0], + "ti": [1.261, 3.892, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12, + "s": [328.039, 199.545, 0], + "to": [-1.261, -3.892, 0], + "ti": [1.765, 3.129, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12.8, + "s": [323.257, 189.086, 0], + "to": [-1.765, -3.129, 0], + "ti": [2.001, 2.482, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 13.6, + "s": [317.447, 180.769, 0], + "to": [-2.001, -2.482, 0], + "ti": [2.064, 1.961, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 14.4, + "s": [311.25, 174.195, 0], + "to": [-2.064, -1.961, 0], + "ti": [2.024, 1.552, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 15.2, + "s": [305.064, 169.001, 0], + "to": [-2.024, -1.552, 0], + "ti": [1.932, 1.236, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16, + "s": [299.106, 164.881, 0], + "to": [-1.932, -1.236, 0], + "ti": [1.816, 0.99, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16.8, + "s": [293.474, 161.588, 0], + "to": [-1.816, -0.99, 0], + "ti": [1.69, 0.797, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 17.6, + "s": [288.212, 158.939, 0], + "to": [-1.69, -0.797, 0], + "ti": [1.563, 0.644, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [283.333, 156.803, 0], + "to": [-1.563, -0.644, 0], + "ti": [1.437, 0.519, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [278.836, 155.078, 0], + "to": [-1.437, -0.519, 0], + "ti": [1.316, 0.416, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20, + "s": [274.712, 153.691, 0], + "to": [-1.316, -0.416, 0], + "ti": [1.201, 0.33, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [270.942, 152.585, 0], + "to": [-1.201, -0.33, 0], + "ti": [1.094, 0.257, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 21.6, + "s": [267.505, 151.714, 0], + "to": [-1.094, -0.257, 0], + "ti": [0.992, 0.194, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 22.4, + "s": [264.381, 151.045, 0], + "to": [-0.992, -0.194, 0], + "ti": [0.897, 0.139, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 23.2, + "s": [261.551, 150.551, 0], + "to": [-0.897, -0.139, 0], + "ti": [0.808, 0.091, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24, + "s": [258.997, 150.211, 0], + "to": [-0.808, -0.091, 0], + "ti": [0.724, 0.048, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24.8, + "s": [256.702, 150.007, 0], + "to": [-0.724, -0.048, 0], + "ti": [0.646, 0.009, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 25.6, + "s": [254.651, 149.925, 0], + "to": [-0.646, -0.009, 0], + "ti": [0.572, -0.025, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26.4, + "s": [252.828, 149.951, 0], + "to": [-0.572, 0.025, 0], + "ti": [0.502, -0.055, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 27.2, + "s": [251.221, 150.073, 0], + "to": [-0.502, 0.055, 0], + "ti": [0.437, -0.082, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28, + "s": [249.815, 150.281, 0], + "to": [-0.437, 0.082, 0], + "ti": [0.377, -0.105, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28.8, + "s": [248.597, 150.563, 0], + "to": [-0.377, 0.105, 0], + "ti": [0.321, -0.125, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 29.6, + "s": [247.552, 150.91, 0], + "to": [-0.321, 0.125, 0], + "ti": [0.269, -0.141, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 30.4, + "s": [246.671, 151.311, 0], + "to": [-0.269, 0.141, 0], + "ti": [0.22, -0.154, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 31.2, + "s": [245.941, 151.756, 0], + "to": [-0.22, 0.154, 0], + "ti": [0.174, -0.163, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32, + "s": [245.353, 152.233, 0], + "to": [-0.174, 0.163, 0], + "ti": [0.132, -0.168, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [244.897, 152.732, 0], + "to": [-0.132, 0.168, 0], + "ti": [0.093, -0.169, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [244.562, 153.241, 0], + "to": [-0.093, 0.169, 0], + "ti": [0.057, -0.166, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [244.34, 153.746, 0], + "to": [-0.057, 0.166, 0], + "ti": [0.024, -0.158, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 35.2, + "s": [244.221, 154.236, 0], + "to": [-0.024, 0.158, 0], + "ti": [-0.006, -0.145, 0] + }, + { + "i": {"x": 0.833, "y": 0.997}, + "o": {"x": 0.167, "y": 0.004}, + "t": 36, + "s": [244.197, 154.694, 0], + "to": [0.006, 0.145, 0], + "ti": [-0.033, -0.128, 0] + }, + { + "i": {"x": 0.833, "y": 0.979}, + "o": {"x": 0.167, "y": 0.023}, + "t": 36.8, + "s": [244.257, 155.108, 0], + "to": [0.033, 0.128, 0], + "ti": [-0.049, -0.109, 0] + }, + { + "i": {"x": 0.833, "y": 0.963}, + "o": {"x": 0.167, "y": 0.037}, + "t": 37.6, + "s": [244.394, 155.461, 0], + "to": [0.049, 0.109, 0], + "ti": [-0.051, -0.108, 0] + }, + { + "i": {"x": 0.833, "y": 0.973}, + "o": {"x": 0.167, "y": 0.025}, + "t": 38.4, + "s": [244.552, 155.765, 0], + "to": [0.051, 0.108, 0], + "ti": [-0.047, -0.12, 0] + }, + { + "i": {"x": 0.833, "y": 0.98}, + "o": {"x": 0.167, "y": 0.018}, + "t": 39.2, + "s": [244.699, 156.107, 0], + "to": [0.047, 0.12, 0], + "ti": [-0.044, -0.131, 0] + }, + { + "i": {"x": 0.833, "y": 0.985}, + "o": {"x": 0.167, "y": 0.015}, + "t": 40, + "s": [244.836, 156.487, 0], + "to": [0.044, 0.131, 0], + "ti": [-0.041, -0.137, 0] + }, + { + "i": {"x": 0.833, "y": 0.987}, + "o": {"x": 0.167, "y": 0.013}, + "t": 40.8, + "s": [244.964, 156.891, 0], + "to": [0.041, 0.137, 0], + "ti": [-0.039, -0.14, 0] + }, + { + "i": {"x": 0.833, "y": 0.989}, + "o": {"x": 0.167, "y": 0.011}, + "t": 41.6, + "s": [245.085, 157.309, 0], + "to": [0.039, 0.14, 0], + "ti": [-0.037, -0.14, 0] + }, + { + "i": {"x": 0.833, "y": 0.99}, + "o": {"x": 0.167, "y": 0.01}, + "t": 42.4, + "s": [245.198, 157.733, 0], + "to": [0.037, 0.14, 0], + "ti": [-0.035, -0.138, 0] + }, + { + "i": {"x": 0.833, "y": 0.991}, + "o": {"x": 0.167, "y": 0.01}, + "t": 43.2, + "s": [245.305, 158.152, 0], + "to": [0.035, 0.138, 0], + "ti": [-0.033, -0.133, 0] + }, + { + "i": {"x": 0.833, "y": 0.991}, + "o": {"x": 0.167, "y": 0.01}, + "t": 44, + "s": [245.406, 158.559, 0], + "to": [0.033, 0.133, 0], + "ti": [-0.031, -0.125, 0] + }, + { + "i": {"x": 0.833, "y": 0.99}, + "o": {"x": 0.167, "y": 0.01}, + "t": 44.8, + "s": [245.502, 158.947, 0], + "to": [0.031, 0.125, 0], + "ti": [-0.03, -0.116, 0] + }, + { + "i": {"x": 0.833, "y": 0.989}, + "o": {"x": 0.167, "y": 0.012}, + "t": 45.6, + "s": [245.594, 159.31, 0], + "to": [0.03, 0.116, 0], + "ti": [-0.029, -0.104, 0] + }, + { + "i": {"x": 0.833, "y": 0.987}, + "o": {"x": 0.167, "y": 0.014}, + "t": 46.4, + "s": [245.683, 159.641, 0], + "to": [0.029, 0.104, 0], + "ti": [-0.014, -0.049, 0] + }, + {"t": 47.2001953125, "s": [245.769, 159.936, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.684, 1.023, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 5.6, + "s": [100.63, 69.657, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.351, -1.07, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.113, 0.018, 0]}, + "t": 6.4, + "s": [104.514, 69.052, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.905, 1.153, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.067, 0.087, 0]}, + "t": 7.2, + "s": [115.346, 69.821, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.398, 0.948, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.695, 0.054, 0]}, + "t": 8, + "s": [58.871, 88.161, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.965, 0.738, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.069, -0.137, 0]}, + "t": 8.8, + "s": [51.174, 36.165, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.972, 0.948, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.06, 0.122, 0]}, + "t": 9.6, + "s": [95.636, 55.822, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.882, 0.78, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.042, -0.141, 0]}, + "t": 10.4, + "s": [69.725, 97.853, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.246, 1.072, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.285, 0.134, 0]}, + "t": 11.2, + "s": [86.959, 82.233, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.96, 0.883, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.094, 0.039, 0]}, + "t": 12, + "s": [94.096, 56.625, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 1.134, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.077, 0.29, 0]}, + "t": 12.8, + "s": [151.503, 104.404, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.845, 0.96, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.166, 0.051, 0]}, + "t": 13.6, + "s": [121.653, 123.646, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.987, 1.023, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.181, -0.079, 0]}, + "t": 14.4, + "s": [91.668, 73.435, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.867, 0.872, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.015, 0.018, 0]}, + "t": 15.2, + "s": [66.045, 99.285, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.952, 1.2, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.223, 0.238, 0]}, + "t": 16, + "s": [87.746, 66.291, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.929, 0.943, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.113, 0.059, 0]}, + "t": 16.8, + "s": [100.66, 48.526, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.102, 0.778, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.477, -0.182, 0]}, + "t": 17.6, + "s": [95.172, 108.893, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.575, 0.936, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.046, 0.133, 0]}, + "t": 18.4, + "s": [95.987, 89.94, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.108, 0.256, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.079, -0.27, 0]}, + "t": 19.2, + "s": [94.176, 58.401, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.975, 0.976, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.047, 0.094, 0]}, + "t": 20, + "s": [130.21, 65.835, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.897, 0.966, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.036, -0.034, 0]}, + "t": 20.8, + "s": [47.499, 124.757, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.822, 1.024, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.43, -0.057, 0]}, + "t": 21.6, + "s": [105.068, 83.037, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.17, 0.979, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.157, 0.019, 0]}, + "t": 22.4, + "s": [118.917, 107.79, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.86, 0.93, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.056, -0.028, 0]}, + "t": 23.2, + "s": [134.616, 75.912, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.094, 0.206, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.205, -0.452, 0]}, + "t": 24, + "s": [86.877, 99.716, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.948, 0.852, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.044, 0.093, 0]}, + "t": 24.8, + "s": [54.265, 96.009, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.9, 1.036, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.139, 0.19, 0]}, + "t": 25.6, + "s": [123.839, 64.381, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.39, 0.839, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.496, 0.025, 0]}, + "t": 26.4, + "s": [97.726, 39.711, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.984, 0.871, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.097, 0.173, 0]}, + "t": 27.2, + "s": [92.458, 75.119, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.931, 1.058, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.019, 0.235, 0]}, + "t": 28, + "s": [59.151, 108.162, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.407, 0.742, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.405, 0.034, 0]}, + "t": 28.8, + "s": [86.256, 126.307, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.957, 0.931, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.097, 0.123, 0]}, + "t": 29.6, + "s": [81.627, 95.551, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.83, 0.652, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.089, -0.391, 0]}, + "t": 30.4, + "s": [53.31, 31.043, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.098, 1.066, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.164, 0.11, 0]}, + "t": 31.2, + "s": [67.002, 42.37, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.867, 0.972, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.045, 0.037, 0]}, + "t": 32, + "s": [81.207, 78.404, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.908, 0.922, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.224, -0.041, 0]}, + "t": 32.8, + "s": [50.269, 13.881, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.43, 0.675, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.934, -1.115, 0]}, + "t": 33.6, + "s": [31.981, 57.039, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.97, 0.375, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.07, 0.112, 0]}, + "t": 34.4, + "s": [30.188, 54.035, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.919, 0.947, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.046, 0.096, 0]}, + "t": 35.2, + "s": [41.246, 45.317, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [17.431, 1.051, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-2.66, -0.148, 0]}, + "t": 36, + "s": [34.148, -11.396, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.997, 0.938, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.083, 0.032, 0]}, + "t": 36.8, + "s": [34.363, 9.033, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.893, 0.829, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.004, -0.247, 0]}, + "t": 37.6, + "s": [-8.365, -24.009, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.892, 0.989, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.375, 0.163, 0]}, + "t": 38.4, + "s": [32.621, -15.669, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.847, 1.17, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.364, -0.012, 0]}, + "t": 39.2, + "s": [44.332, -6.94, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.476, 0.712, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.183, 0.056, 0]}, + "t": 40, + "s": [47.804, -14.568, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.098, 0.898, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.099, 0.117, 0]}, + "t": 40.8, + "s": [50.704, 8.589, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.912, 1.348, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.045, 0.46, 0]}, + "t": 41.6, + "s": [66.039, 65.528, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.638, 0.848, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.665, 0.067, 0]}, + "t": 42.4, + "s": [32.735, 78.112, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.718, 0.935, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.074, 0.185, 0]}, + "t": 43.2, + "s": [30.98, 12.995, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.934, 0.692, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.118, -0.305, 0]}, + "t": 44, + "s": [46.164, -40.385, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.25, 0.862, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.313, 0.114, 0]}, + "t": 44.8, + "s": [82.432, -28.944, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.952, 0.97, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.094, 0.211, 0]}, + "t": 45.6, + "s": [74.813, 1.96, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.112, -0.047, 0]}, + "t": 46.4, + "s": [13.817, 22.06, 100] + }, + {"t": 47.2001953125, "s": [39.779, 9.173, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ty": "sr", + "sy": 2, + "d": 1, + "pt": {"a": 0, "k": 3, "ix": 3}, + "p": {"a": 0, "k": [6, 32], "ix": 4}, + "r": {"a": 0, "k": 0, "ix": 5}, + "or": {"a": 0, "k": 6.599, "ix": 7}, + "os": {"a": 0, "k": 0, "ix": 9}, + "ix": 1, + "nm": "Polystar Path 1", + "mn": "ADBE Vector Shape - Star", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [0.313725501299, 0.890196084976, 0.760784327984, 1], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-7.382, -25.677], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Polystar 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 5.599609375, + "op": 48, + "st": 5.599609375, + "bm": 0 + }, + { + "ddd": 0, + "ind": 15, + "ty": 4, + "nm": "Shape Layer 37", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 7.2, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 11.2, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 28.8, + "s": [100] + }, + {"t": 41.599609375, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 92, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 7.2, + "s": [264.075, 300.144, 0], + "to": [-0.069, 0.468, 0], + "ti": [0.355, -2.342, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8, + "s": [263.663, 302.955, 0], + "to": [-0.355, 2.342, 0], + "ti": [0.559, -5.353, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [261.945, 314.199, 0], + "to": [-0.559, 5.353, 0], + "ti": [0.004, -7.357, 0] + }, + { + "i": {"x": 0.833, "y": 0.999}, + "o": {"x": 0.167, "y": 0.001}, + "t": 9.6, + "s": [260.312, 335.072, 0], + "to": [-0.004, 7.357, 0], + "ti": [-1.215, -7.142, 0] + }, + { + "i": {"x": 0.833, "y": 0.988}, + "o": {"x": 0.167, "y": 0.014}, + "t": 10.4, + "s": [261.922, 358.34, 0], + "to": [1.215, 7.142, 0], + "ti": [-2.396, -5.718, 0] + }, + { + "i": {"x": 0.833, "y": 0.96}, + "o": {"x": 0.167, "y": 0.047}, + "t": 11.2, + "s": [267.601, 377.926, 0], + "to": [2.396, 5.718, 0], + "ti": [-3.152, -4.167, 0] + }, + { + "i": {"x": 0.833, "y": 0.923}, + "o": {"x": 0.167, "y": 0.09}, + "t": 12, + "s": [276.299, 392.647, 0], + "to": [3.152, 4.167, 0], + "ti": [-3.444, -2.85, 0] + }, + { + "i": {"x": 0.833, "y": 0.891}, + "o": {"x": 0.167, "y": 0.125}, + "t": 12.8, + "s": [286.512, 402.925, 0], + "to": [3.444, 2.85, 0], + "ti": [-3.405, -1.874, 0] + }, + { + "i": {"x": 0.833, "y": 0.869}, + "o": {"x": 0.167, "y": 0.15}, + "t": 13.6, + "s": [296.962, 409.748, 0], + "to": [3.405, 1.874, 0], + "ti": [-3.2, -1.208, 0] + }, + { + "i": {"x": 0.833, "y": 0.856}, + "o": {"x": 0.167, "y": 0.162}, + "t": 14.4, + "s": [306.94, 414.169, 0], + "to": [3.2, 1.208, 0], + "ti": [-2.937, -0.769, 0] + }, + { + "i": {"x": 0.833, "y": 0.848}, + "o": {"x": 0.167, "y": 0.169}, + "t": 15.2, + "s": [316.159, 416.998, 0], + "to": [2.937, 0.769, 0], + "ti": [-2.672, -0.481, 0] + }, + { + "i": {"x": 0.833, "y": 0.845}, + "o": {"x": 0.167, "y": 0.172}, + "t": 16, + "s": [324.559, 418.783, 0], + "to": [2.672, 0.481, 0], + "ti": [-2.428, -0.291, 0] + }, + { + "i": {"x": 0.833, "y": 0.843}, + "o": {"x": 0.167, "y": 0.174}, + "t": 16.8, + "s": [332.191, 419.883, 0], + "to": [2.428, 0.291, 0], + "ti": [-2.206, -0.163, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.175}, + "t": 17.6, + "s": [339.125, 420.527, 0], + "to": [2.206, 0.163, 0], + "ti": [-2.007, -0.077, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.175}, + "t": 18.4, + "s": [345.429, 420.863, 0], + "to": [2.007, 0.077, 0], + "ti": [-1.827, -0.019, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.175}, + "t": 19.2, + "s": [351.165, 420.991, 0], + "to": [1.827, 0.019, 0], + "ti": [-1.665, 0.021, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.175}, + "t": 20, + "s": [356.391, 420.977, 0], + "to": [1.665, -0.021, 0], + "ti": [-1.519, 0.049, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.175}, + "t": 20.8, + "s": [361.156, 420.865, 0], + "to": [1.519, -0.049, 0], + "ti": [-1.386, 0.069, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.175}, + "t": 21.6, + "s": [365.504, 420.683, 0], + "to": [1.386, -0.069, 0], + "ti": [-1.264, 0.084, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.174}, + "t": 22.4, + "s": [369.472, 420.452, 0], + "to": [1.264, -0.084, 0], + "ti": [-1.151, 0.096, 0] + }, + { + "i": {"x": 0.833, "y": 0.843}, + "o": {"x": 0.167, "y": 0.173}, + "t": 23.2, + "s": [373.088, 420.182, 0], + "to": [1.151, -0.096, 0], + "ti": [-1.046, 0.107, 0] + }, + { + "i": {"x": 0.833, "y": 0.843}, + "o": {"x": 0.167, "y": 0.173}, + "t": 24, + "s": [376.379, 419.878, 0], + "to": [1.046, -0.107, 0], + "ti": [-0.947, 0.118, 0] + }, + { + "i": {"x": 0.833, "y": 0.844}, + "o": {"x": 0.167, "y": 0.171}, + "t": 24.8, + "s": [379.365, 419.542, 0], + "to": [0.947, -0.118, 0], + "ti": [-0.856, 0.124, 0] + }, + { + "i": {"x": 0.833, "y": 0.845}, + "o": {"x": 0.167, "y": 0.171}, + "t": 25.6, + "s": [382.063, 419.172, 0], + "to": [0.856, -0.124, 0], + "ti": [-0.773, 0.118, 0] + }, + { + "i": {"x": 0.833, "y": 0.846}, + "o": {"x": 0.167, "y": 0.172}, + "t": 26.4, + "s": [384.499, 418.801, 0], + "to": [0.773, -0.118, 0], + "ti": [-0.697, 0.107, 0] + }, + { + "i": {"x": 0.833, "y": 0.846}, + "o": {"x": 0.167, "y": 0.172}, + "t": 27.2, + "s": [386.7, 418.464, 0], + "to": [0.697, -0.107, 0], + "ti": [-0.626, 0.097, 0] + }, + { + "i": {"x": 0.833, "y": 0.846}, + "o": {"x": 0.167, "y": 0.172}, + "t": 28, + "s": [388.681, 418.159, 0], + "to": [0.626, -0.097, 0], + "ti": [-0.561, 0.088, 0] + }, + { + "i": {"x": 0.833, "y": 0.847}, + "o": {"x": 0.167, "y": 0.173}, + "t": 28.8, + "s": [390.459, 417.883, 0], + "to": [0.561, -0.088, 0], + "ti": [-0.5, 0.079, 0] + }, + { + "i": {"x": 0.833, "y": 0.847}, + "o": {"x": 0.167, "y": 0.173}, + "t": 29.6, + "s": [392.047, 417.633, 0], + "to": [0.5, -0.079, 0], + "ti": [-0.443, 0.072, 0] + }, + { + "i": {"x": 0.833, "y": 0.848}, + "o": {"x": 0.167, "y": 0.174}, + "t": 30.4, + "s": [393.458, 417.406, 0], + "to": [0.443, -0.072, 0], + "ti": [-0.39, 0.066, 0] + }, + { + "i": {"x": 0.833, "y": 0.848}, + "o": {"x": 0.167, "y": 0.172}, + "t": 31.2, + "s": [394.704, 417.199, 0], + "to": [0.39, -0.066, 0], + "ti": [-0.34, 0.061, 0] + }, + { + "i": {"x": 0.833, "y": 0.851}, + "o": {"x": 0.167, "y": 0.173}, + "t": 32, + "s": [395.795, 417.009, 0], + "to": [0.34, -0.061, 0], + "ti": [-0.293, 0.057, 0] + }, + { + "i": {"x": 0.833, "y": 0.852}, + "o": {"x": 0.167, "y": 0.172}, + "t": 32.8, + "s": [396.741, 416.833, 0], + "to": [0.293, -0.057, 0], + "ti": [-0.249, 0.053, 0] + }, + { + "i": {"x": 0.833, "y": 0.855}, + "o": {"x": 0.167, "y": 0.173}, + "t": 33.6, + "s": [397.551, 416.669, 0], + "to": [0.249, -0.053, 0], + "ti": [-0.207, 0.05, 0] + }, + { + "i": {"x": 0.833, "y": 0.859}, + "o": {"x": 0.167, "y": 0.172}, + "t": 34.4, + "s": [398.233, 416.514, 0], + "to": [0.207, -0.05, 0], + "ti": [-0.168, 0.048, 0] + }, + { + "i": {"x": 0.833, "y": 0.865}, + "o": {"x": 0.167, "y": 0.169}, + "t": 35.2, + "s": [398.794, 416.367, 0], + "to": [0.168, -0.048, 0], + "ti": [-0.132, 0.046, 0] + }, + { + "i": {"x": 0.833, "y": 0.875}, + "o": {"x": 0.167, "y": 0.163}, + "t": 36, + "s": [399.242, 416.225, 0], + "to": [0.132, -0.046, 0], + "ti": [-0.097, 0.045, 0] + }, + { + "i": {"x": 0.833, "y": 0.891}, + "o": {"x": 0.167, "y": 0.148}, + "t": 36.8, + "s": [399.584, 416.088, 0], + "to": [0.097, -0.045, 0], + "ti": [-0.064, 0.044, 0] + }, + { + "i": {"x": 0.833, "y": 0.921}, + "o": {"x": 0.167, "y": 0.111}, + "t": 37.6, + "s": [399.824, 415.954, 0], + "to": [0.064, -0.044, 0], + "ti": [-0.034, 0.043, 0] + }, + { + "i": {"x": 0.833, "y": 0.974}, + "o": {"x": 0.167, "y": 0.032}, + "t": 38.4, + "s": [399.97, 415.824, 0], + "to": [0.034, -0.043, 0], + "ti": [-0.012, 0.044, 0] + }, + { + "i": {"x": 0.833, "y": 0.998}, + "o": {"x": 0.167, "y": 0.002}, + "t": 39.2, + "s": [400.026, 415.696, 0], + "to": [0.012, -0.044, 0], + "ti": [-0.006, 0.049, 0] + }, + { + "i": {"x": 0.833, "y": 0.997}, + "o": {"x": 0.167, "y": 0.003}, + "t": 40, + "s": [400.041, 415.559, 0], + "to": [0.006, -0.049, 0], + "ti": [-0.008, 0.056, 0] + }, + { + "i": {"x": 0.833, "y": 0.996}, + "o": {"x": 0.167, "y": 0.004}, + "t": 40.8, + "s": [400.063, 415.401, 0], + "to": [0.008, -0.056, 0], + "ti": [-0.011, 0.062, 0] + }, + { + "i": {"x": 0.833, "y": 0.994}, + "o": {"x": 0.167, "y": 0.006}, + "t": 41.6, + "s": [400.091, 415.224, 0], + "to": [0.011, -0.062, 0], + "ti": [-0.014, 0.066, 0] + }, + { + "i": {"x": 0.833, "y": 0.992}, + "o": {"x": 0.167, "y": 0.008}, + "t": 42.4, + "s": [400.129, 415.031, 0], + "to": [0.014, -0.066, 0], + "ti": [-0.017, 0.07, 0] + }, + { + "i": {"x": 0.833, "y": 0.989}, + "o": {"x": 0.167, "y": 0.011}, + "t": 43.2, + "s": [400.175, 414.825, 0], + "to": [0.017, -0.07, 0], + "ti": [-0.021, 0.073, 0] + }, + { + "i": {"x": 0.833, "y": 0.985}, + "o": {"x": 0.167, "y": 0.015}, + "t": 44, + "s": [400.232, 414.61, 0], + "to": [0.021, -0.073, 0], + "ti": [-0.025, 0.074, 0] + }, + { + "i": {"x": 0.833, "y": 0.98}, + "o": {"x": 0.167, "y": 0.02}, + "t": 44.8, + "s": [400.301, 414.389, 0], + "to": [0.025, -0.074, 0], + "ti": [-0.029, 0.073, 0] + }, + { + "i": {"x": 0.833, "y": 0.974}, + "o": {"x": 0.167, "y": 0.026}, + "t": 45.6, + "s": [400.382, 414.168, 0], + "to": [0.029, -0.073, 0], + "ti": [-0.034, 0.071, 0] + }, + { + "i": {"x": 0.833, "y": 0.964}, + "o": {"x": 0.167, "y": 0.036}, + "t": 46.4, + "s": [400.476, 413.95, 0], + "to": [0.034, -0.071, 0], + "ti": [-0.018, 0.035, 0] + }, + {"t": 47.2001953125, "s": [400.585, 413.741, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.237, 1.014, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 7.2, + "s": [60.433, 69.807, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.948, 0.354, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.078, 0.012, 0]}, + "t": 8, + "s": [57.035, 63.909, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.869, 0.914, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.136, 0.096, 0]}, + "t": 8.8, + "s": [110.865, 70.792, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.993, 2.541, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.23, 2.81, 0]}, + "t": 9.6, + "s": [90.384, 117.236, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.615, 1.021, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.008, 0.079, 0]}, + "t": 10.4, + "s": [78.755, 118.657, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.957, 0.878, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.106, 0.017, 0]}, + "t": 11.2, + "s": [89.349, 90.995, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.759, 1.314, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.09, 0.263, 0]}, + "t": 12, + "s": [127.76, 125.63, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.85, 0.949, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.128, 0.066, 0]}, + "t": 12.8, + "s": [109.298, 141.669, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.93, 1.01, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.187, -0.134, 0]}, + "t": 13.6, + "s": [74.466, 65.123, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.468, 0.913, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.45, 0.009, 0]}, + "t": 14.4, + "s": [46.407, 94.474, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.94, 2.673, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.099, 2.041, 0]}, + "t": 15.2, + "s": [50.79, 61.594, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.179, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.209, 0.079, 0]}, + "t": 16, + "s": [74.379, 60.195, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.903, 1.053, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.057, 0.166, 0]}, + "t": 16.8, + "s": [67.656, 89.669, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.319, 0.963, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.578, 0.032, 0]}, + "t": 17.6, + "s": [88.817, 119.34, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.032, 0.863, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.089, -0.068, 0]}, + "t": 18.4, + "s": [92.391, 70.889, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.912, 1.002, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.023, 0.212, 0]}, + "t": 19.2, + "s": [145.365, 97.56, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.702, 0.895, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.509, 0.002, 0]}, + "t": 20, + "s": [71.948, 114.853, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.886, 1.201, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.074, 0.407, 0]}, + "t": 20.8, + "s": [67.657, 97.077, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.837, 0.928, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.312, 0.059, 0]}, + "t": 21.6, + "s": [108.077, 92.496, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.302, 1.255, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.171, -0.517, 0]}, + "t": 22.4, + "s": [122.812, 108.142, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.944, 1.236, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.065, 0.063, 0]}, + "t": 23.2, + "s": [136.892, 105.97, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.917, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.168, 0.062, 0]}, + "t": 24, + "s": [71.752, 114.791, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [4.697, 0.909, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-10.725, 0.167, 0]}, + "t": 24.8, + "s": [93.325, 80.942, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.281, 2.112, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.081, 0.998, 0]}, + "t": 25.6, + "s": [93.159, 47.153, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.918, 0.796, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.064, 0.078, 0]}, + "t": 26.4, + "s": [100.704, 44.07, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-6.845, 0.936, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-7.896, 0.141, 0]}, + "t": 27.2, + "s": [67.68, 88.243, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.94, 0.681, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.084, -0.275, 0]}, + "t": 28, + "s": [68.025, 152.101, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.562, 0.9, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.209, 0.113, 0]}, + "t": 28.8, + "s": [100.152, 137.254, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.999, 0.902, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.103, 0.504, 0]}, + "t": 29.6, + "s": [91.001, 95.342, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.918, -2.093, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.001, 0.554, 0]}, + "t": 30.4, + "s": [52.026, 87.036, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-2.6, 0.998, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-3.838, 0.086, 0]}, + "t": 31.2, + "s": [90.362, 85.565, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.926, 0.91, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.085, -0.003, 0]}, + "t": 32, + "s": [89.547, 32.423, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.446, 1.058, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.669, 1.085, 0]}, + "t": 32.8, + "s": [55.168, 83.983, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.934, 0.02, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.07, 0.034, 0]}, + "t": 33.6, + "s": [58.978, 88.274, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.109, 0.913, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.325, 0.091, 0]}, + "t": 34.4, + "s": [34.79, 80.994, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.922, 1.213, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.047, 1.844, 0]}, + "t": 35.2, + "s": [39.732, 2.714, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [4.227, 1.121, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.292, 0.06, 0]}, + "t": 36, + "s": [28.352, -0.992, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.984, 0.973, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.081, 0.049, 0]}, + "t": 36.8, + "s": [29.041, 12.182, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.923, 0.921, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.02, -0.04, 0]}, + "t": 37.6, + "s": [1.635, -20.19, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.207, 3.707, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.991, -1.388, 0]}, + "t": 38.4, + "s": [23.803, 1.627, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.933, 0.909, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.078, 0.081, 0]}, + "t": 39.2, + "s": [22.083, 0.392, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.444, 0.353, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.338, 0.943, 0]}, + "t": 40, + "s": [48.704, 41.779, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.843, 1.011, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.098, 0.096, 0]}, + "t": 40.8, + "s": [43.437, 45.791, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.042, 0.741, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.178, 0.01, 0]}, + "t": 41.6, + "s": [13.575, 72.931, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.846, 0.91, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.028, 0.123, 0]}, + "t": 42.4, + "s": [-12.851, 42.13, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.907, 1.471, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.181, 1.058, 0]}, + "t": 43.2, + "s": [26.868, -22.827, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.014, 0.916, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.832, 0.071, 0]}, + "t": 44, + "s": [60.696, -28.382, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.956, 6.011, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.077, 11.036, 0]}, + "t": 44.8, + "s": [64.461, 8.569, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.945, 1.005, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.093, 0.082, 0]}, + "t": 45.6, + "s": [14.897, 8.85, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.162, 0.005, 0]}, + "t": 46.4, + "s": [38.326, -8.337, 100] + }, + {"t": 47.2001953125, "s": [30.376, 9.931, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ty": "sr", + "sy": 2, + "d": 1, + "pt": {"a": 0, "k": 3, "ix": 3}, + "p": {"a": 0, "k": [6, 32], "ix": 4}, + "r": {"a": 0, "k": 0, "ix": 5}, + "or": {"a": 0, "k": 6.599, "ix": 7}, + "os": {"a": 0, "k": 0, "ix": 9}, + "ix": 1, + "nm": "Polystar Path 1", + "mn": "ADBE Vector Shape - Star", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [0.167325377464, 0.716982424259, 1, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-7.382, -25.677], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Polystar 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 7.2001953125, + "op": 48, + "st": 7.2001953125, + "bm": 0 + }, + { + "ddd": 0, + "ind": 16, + "ty": 4, + "nm": "Shape Layer 36", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 4, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 8, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 25.6, + "s": [100] + }, + {"t": 38.400390625, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 92, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 0.748}, + "o": {"x": 0.167, "y": 0.106}, + "t": 4, + "s": [268.501, 303.894, 0], + "to": [0.373, -0.267, 0], + "ti": [-1.332, 1.601, 0] + }, + { + "i": {"x": 0.833, "y": 0.933}, + "o": {"x": 0.167, "y": 0.032}, + "t": 4.8, + "s": [270.738, 302.29, 0], + "to": [1.332, -1.601, 0], + "ti": [1.952, 1.768, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 5.6, + "s": [276.491, 294.286, 0], + "to": [-1.952, -1.768, 0], + "ti": [6.31, 0.166, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 6.4, + "s": [259.026, 291.685, 0], + "to": [-6.31, -0.166, 0], + "ti": [6.364, -0.502, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 7.2, + "s": [238.628, 293.288, 0], + "to": [-6.364, 0.502, 0], + "ti": [5.435, -0.368, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8, + "s": [220.844, 294.694, 0], + "to": [-5.435, 0.368, 0], + "ti": [4.549, -0.177, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [206.017, 295.497, 0], + "to": [-4.549, 0.177, 0], + "ti": [3.853, -0.014, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [193.549, 295.758, 0], + "to": [-3.853, 0.014, 0], + "ti": [3.314, 0.117, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 10.4, + "s": [182.897, 295.583, 0], + "to": [-3.314, -0.117, 0], + "ti": [2.886, 0.223, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 11.2, + "s": [173.668, 295.056, 0], + "to": [-2.886, -0.223, 0], + "ti": [2.537, 0.31, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12, + "s": [165.584, 294.243, 0], + "to": [-2.537, -0.31, 0], + "ti": [2.246, 0.383, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12.8, + "s": [158.446, 293.194, 0], + "to": [-2.246, -0.383, 0], + "ti": [2.001, 0.441, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 13.6, + "s": [152.105, 291.947, 0], + "to": [-2.001, -0.441, 0], + "ti": [1.789, 0.485, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 14.4, + "s": [146.441, 290.551, 0], + "to": [-1.789, -0.485, 0], + "ti": [1.601, 0.519, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 15.2, + "s": [141.373, 289.038, 0], + "to": [-1.601, -0.519, 0], + "ti": [1.435, 0.544, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16, + "s": [136.833, 287.437, 0], + "to": [-1.435, -0.544, 0], + "ti": [1.285, 0.562, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16.8, + "s": [132.765, 285.771, 0], + "to": [-1.285, -0.562, 0], + "ti": [1.15, 0.573, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 17.6, + "s": [129.121, 284.063, 0], + "to": [-1.15, -0.573, 0], + "ti": [1.027, 0.578, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [125.863, 282.331, 0], + "to": [-1.027, -0.578, 0], + "ti": [0.915, 0.576, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [122.957, 280.597, 0], + "to": [-0.915, -0.576, 0], + "ti": [0.814, 0.569, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20, + "s": [120.371, 278.877, 0], + "to": [-0.814, -0.569, 0], + "ti": [0.721, 0.558, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [118.075, 277.184, 0], + "to": [-0.721, -0.558, 0], + "ti": [0.637, 0.542, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 21.6, + "s": [116.044, 275.532, 0], + "to": [-0.637, -0.542, 0], + "ti": [0.56, 0.523, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 22.4, + "s": [114.254, 273.931, 0], + "to": [-0.56, -0.523, 0], + "ti": [0.49, 0.502, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 23.2, + "s": [112.684, 272.392, 0], + "to": [-0.49, -0.502, 0], + "ti": [0.427, 0.478, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24, + "s": [111.312, 270.921, 0], + "to": [-0.427, -0.478, 0], + "ti": [0.369, 0.453, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24.8, + "s": [110.122, 269.523, 0], + "to": [-0.369, -0.453, 0], + "ti": [0.317, 0.426, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 25.6, + "s": [109.095, 268.204, 0], + "to": [-0.317, -0.426, 0], + "ti": [0.27, 0.399, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26.4, + "s": [108.219, 266.966, 0], + "to": [-0.27, -0.399, 0], + "ti": [0.226, 0.37, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 27.2, + "s": [107.478, 265.812, 0], + "to": [-0.226, -0.37, 0], + "ti": [0.186, 0.342, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28, + "s": [106.862, 264.743, 0], + "to": [-0.186, -0.342, 0], + "ti": [0.15, 0.313, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28.8, + "s": [106.36, 263.762, 0], + "to": [-0.15, -0.313, 0], + "ti": [0.117, 0.283, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 29.6, + "s": [105.962, 262.868, 0], + "to": [-0.117, -0.283, 0], + "ti": [0.086, 0.254, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 30.4, + "s": [105.66, 262.062, 0], + "to": [-0.086, -0.254, 0], + "ti": [0.058, 0.224, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 31.2, + "s": [105.445, 261.346, 0], + "to": [-0.058, -0.224, 0], + "ti": [0.032, 0.194, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32, + "s": [105.312, 260.718, 0], + "to": [-0.032, -0.194, 0], + "ti": [0.008, 0.164, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [105.253, 260.18, 0], + "to": [-0.008, -0.164, 0], + "ti": [-0.014, 0.135, 0] + }, + { + "i": {"x": 0.833, "y": 0.994}, + "o": {"x": 0.167, "y": 0.007}, + "t": 33.6, + "s": [105.263, 259.732, 0], + "to": [0.014, -0.135, 0], + "ti": [-0.034, 0.104, 0] + }, + { + "i": {"x": 0.833, "y": 0.97}, + "o": {"x": 0.167, "y": 0.035}, + "t": 34.4, + "s": [105.336, 259.373, 0], + "to": [0.034, -0.104, 0], + "ti": [-0.052, 0.074, 0] + }, + { + "i": {"x": 0.833, "y": 0.917}, + "o": {"x": 0.167, "y": 0.092}, + "t": 35.2, + "s": [105.467, 259.105, 0], + "to": [0.052, -0.074, 0], + "ti": [-0.065, 0.05, 0] + }, + { + "i": {"x": 0.833, "y": 0.879}, + "o": {"x": 0.167, "y": 0.129}, + "t": 36, + "s": [105.65, 258.927, 0], + "to": [0.065, -0.05, 0], + "ti": [-0.069, 0.036, 0] + }, + { + "i": {"x": 0.833, "y": 0.876}, + "o": {"x": 0.167, "y": 0.141}, + "t": 36.8, + "s": [105.86, 258.807, 0], + "to": [0.069, -0.036, 0], + "ti": [-0.062, 0.029, 0] + }, + { + "i": {"x": 0.833, "y": 0.883}, + "o": {"x": 0.167, "y": 0.152}, + "t": 37.6, + "s": [106.065, 258.712, 0], + "to": [0.062, -0.029, 0], + "ti": [-0.047, 0.024, 0] + }, + { + "i": {"x": 0.833, "y": 0.896}, + "o": {"x": 0.167, "y": 0.15}, + "t": 38.4, + "s": [106.232, 258.632, 0], + "to": [0.047, -0.024, 0], + "ti": [-0.031, 0.02, 0] + }, + { + "i": {"x": 0.833, "y": 0.92}, + "o": {"x": 0.167, "y": 0.138}, + "t": 39.2, + "s": [106.349, 258.566, 0], + "to": [0.031, -0.02, 0], + "ti": [-0.015, 0.014, 0] + }, + { + "i": {"x": 0.833, "y": 0.961}, + "o": {"x": 0.167, "y": 0.065}, + "t": 40, + "s": [106.418, 258.515, 0], + "to": [0.015, -0.014, 0], + "ti": [0.001, 0.009, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40.8, + "s": [106.44, 258.479, 0], + "to": [-0.001, -0.009, 0], + "ti": [0.016, 0.003, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 41.6, + "s": [106.414, 258.46, 0], + "to": [-0.016, -0.003, 0], + "ti": [0.031, -0.003, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 42.4, + "s": [106.343, 258.459, 0], + "to": [-0.031, 0.003, 0], + "ti": [0.045, -0.008, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 43.2, + "s": [106.228, 258.475, 0], + "to": [-0.045, 0.008, 0], + "ti": [0.059, -0.014, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44, + "s": [106.07, 258.51, 0], + "to": [-0.059, 0.014, 0], + "ti": [0.072, -0.02, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44.8, + "s": [105.873, 258.562, 0], + "to": [-0.072, 0.02, 0], + "ti": [0.084, -0.026, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 45.6, + "s": [105.639, 258.632, 0], + "to": [-0.084, 0.026, 0], + "ti": [0.095, -0.032, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 46.4, + "s": [105.369, 258.719, 0], + "to": [-0.095, 0.032, 0], + "ti": [0.05, -0.017, 0] + }, + {"t": 47.2001953125, "s": [105.069, 258.823, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.896, -0.931, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 4, + "s": [111.822, 109.374, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.087, 0.955, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.414, 0.087, 0]}, + "t": 4.8, + "s": [100.055, 106.422, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.951, 0.812, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.092, -0.097, 0]}, + "t": 5.6, + "s": [97.093, 40.951, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.773, 0.949, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.117, 0.15, 0]}, + "t": 6.4, + "s": [67.613, 71.247, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.893, 1.157, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.132, -0.129, 0]}, + "t": 7.2, + "s": [79.872, 109.348, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.215, 0.987, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.381, 0.054, 0]}, + "t": 8, + "s": [101.054, 94.428, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.929, 0.945, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.06, -0.015, 0]}, + "t": 8.8, + "s": [106.979, 137.485, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.974, 0.793, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.477, -0.164, 0]}, + "t": 9.6, + "s": [85.798, 101.174, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.674, 1.013, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.039, 0.139, 0]}, + "t": 10.4, + "s": [88.947, 113.411, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.924, 0.677, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.074, 0.011, 0]}, + "t": 11.2, + "s": [86.793, 131.596, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.583, 0.977, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.914, 0.112, 0]}, + "t": 12, + "s": [106.377, 110.603, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.868, 0.899, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.088, -0.033, 0]}, + "t": 12.8, + "s": [104.74, 50.192, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.873, 0.902, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.225, 0.471, 0]}, + "t": 13.6, + "s": [75.287, 93.627, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.914, 0.963, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.244, 0.557, 0]}, + "t": 14.4, + "s": [57.971, 102.957, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [6.069, 1.272, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [2.529, -0.068, 0]}, + "t": 15.2, + "s": [48.983, 104.599, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.801, 1.91, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.082, 0.064, 0]}, + "t": 16, + "s": [48.677, 103.694, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.786, 1.017, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.143, 0.076, 0]}, + "t": 16.8, + "s": [67.607, 107.546, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.999, 0.968, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.136, 0.014, 0]}, + "t": 17.6, + "s": [93.956, 61.633, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.898, 0.924, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.001, -0.051, 0]}, + "t": 18.4, + "s": [135.372, 117.12, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.936, 1.36, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.448, -0.923, 0]}, + "t": 19.2, + "s": [94.654, 82.761, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.146, 1.103, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.276, 0.068, 0]}, + "t": 20, + "s": [85.351, 85.606, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.778, 0.911, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.092, 0.046, 0]}, + "t": 20.8, + "s": [87.506, 70.455, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.973, 0.042, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.134, 1.426, 0]}, + "t": 21.6, + "s": [107.432, 104.297, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.792, 1.155, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.04, 0.091, 0]}, + "t": 22.4, + "s": [140.473, 106.399, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.967, 0.932, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.139, 0.054, 0]}, + "t": 23.2, + "s": [118.147, 128.441, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.974, 1.121, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.054, -0.359, 0]}, + "t": 24, + "s": [84.776, 65.43, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.673, 0.886, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.038, 0.049, 0]}, + "t": 24.8, + "s": [105.029, 77.29, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.925, 1.408, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.112, 0.311, 0]}, + "t": 25.6, + "s": [91.068, 48.266, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.647, 0.929, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.747, 0.069, 0]}, + "t": 26.4, + "s": [50.228, 37.635, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.827, 0.939, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.109, -0.474, 0]}, + "t": 27.2, + "s": [54.329, 100.336, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.244, 1.036, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.161, -0.223, 0]}, + "t": 28, + "s": [67.613, 90.964, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.954, 0.595, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.062, 0.025, 0]}, + "t": 28.8, + "s": [81.902, 93.51, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.785, 0.829, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.101, 0.105, 0]}, + "t": 29.6, + "s": [25.699, 89.858, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.976, 0.897, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.136, 0.163, 0]}, + "t": 30.4, + "s": [51.156, 75.74, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.939, 1.149, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.034, 0.43, 0]}, + "t": 31.2, + "s": [91.35, 60.958, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.534, 0.988, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.231, 0.053, 0]}, + "t": 32, + "s": [62.734, 57.409, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.938, 0.526, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.072, -0.014, 0]}, + "t": 32.8, + "s": [70.32, 67.319, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.896, 0.923, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.24, 0.101, 0]}, + "t": 33.6, + "s": [14.17, 58.838, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.32, 0.689, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.419, -0.944, 0]}, + "t": 34.4, + "s": [28.636, 19.113, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.869, 1.114, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.066, 0.114, 0]}, + "t": 35.2, + "s": [32.23, 22.336, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.092, 1.006, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.228, 0.048, 0]}, + "t": 36, + "s": [14.851, 31.15, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.899, 1.001, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.044, 0.005, 0]}, + "t": 36.8, + "s": [4.812, 10.283, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.075, 1.195, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.472, 0.001, 0]}, + "t": 37.6, + "s": [25.925, 32.587, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.799, 0.984, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.04, 0.058, 0]}, + "t": 38.4, + "s": [30.453, 9.9, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.842, 0.973, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.142, -0.02, 0]}, + "t": 39.2, + "s": [21.826, 85.625, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.674, 0.929, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.177, -0.039, 0]}, + "t": 40, + "s": [9.608, 24.619, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.022, 0.324, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.112, -0.462, 0]}, + "t": 40.8, + "s": [-1.289, 66.096, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.84, 0.913, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.018, 0.095, 0]}, + "t": 41.6, + "s": [-33.054, 59.758, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.926, 1.101, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.173, 1.876, 0]}, + "t": 42.4, + "s": [7.239, 14.644, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.273, 1.364, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.683, 0.046, 0]}, + "t": 43.2, + "s": [44.549, 12.547, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.913, 0.998, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.094, 0.068, 0]}, + "t": 44, + "s": [40.492, 17.184, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.637, 1.065, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.953, -0.003, 0]}, + "t": 44.8, + "s": [9.161, -7.703, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.935, 0.991, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.079, 0.037, 0]}, + "t": 45.6, + "s": [7.764, 16.458, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.3, -0.01, 0]}, + "t": 46.4, + "s": [36.594, -26.534, 100] + }, + {"t": 47.2001953125, "s": [30.332, 11.798, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ty": "sr", + "sy": 2, + "d": 1, + "pt": {"a": 0, "k": 3, "ix": 3}, + "p": {"a": 0, "k": [6, 32], "ix": 4}, + "r": {"a": 0, "k": 0, "ix": 5}, + "or": {"a": 0, "k": 6.599, "ix": 7}, + "os": {"a": 0, "k": 0, "ix": 9}, + "ix": 1, + "nm": "Polystar Path 1", + "mn": "ADBE Vector Shape - Star", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [0.313725501299, 0.890196084976, 0.760784327984, 1], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-7.382, -25.677], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Polystar 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 4, + "op": 48, + "st": 4, + "bm": 0 + }, + { + "ddd": 0, + "ind": 17, + "ty": 4, + "nm": "Shape Layer 35", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 3.2, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 7.2, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 24.8, + "s": [100] + }, + {"t": 37.599609375, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 92, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 0.76}, + "o": {"x": 0.167, "y": 0.095}, + "t": 3.2, + "s": [269.847, 301.952, 0], + "to": [0.17, -0.147, 0], + "ti": [-0.855, 0.741, 0] + }, + { + "i": {"x": 0.833, "y": 0.865}, + "o": {"x": 0.167, "y": 0.06}, + "t": 4, + "s": [270.865, 301.071, 0], + "to": [0.855, -0.741, 0], + "ti": [-1.897, 1.74, 0] + }, + { + "i": {"x": 0.833, "y": 0.907}, + "o": {"x": 0.167, "y": 0.068}, + "t": 4.8, + "s": [274.976, 297.505, 0], + "to": [1.897, -1.74, 0], + "ti": [-2.487, 2.492, 0] + }, + { + "i": {"x": 0.833, "y": 0.926}, + "o": {"x": 0.167, "y": 0.075}, + "t": 5.6, + "s": [282.245, 290.631, 0], + "to": [2.487, -2.492, 0], + "ti": [-2.333, 2.568, 0] + }, + { + "i": {"x": 0.833, "y": 0.935}, + "o": {"x": 0.167, "y": 0.077}, + "t": 6.4, + "s": [289.898, 282.555, 0], + "to": [2.333, -2.568, 0], + "ti": [-1.909, 2.26, 0] + }, + { + "i": {"x": 0.833, "y": 0.939}, + "o": {"x": 0.167, "y": 0.074}, + "t": 7.2, + "s": [296.244, 275.226, 0], + "to": [1.909, -2.26, 0], + "ti": [-1.56, 1.916, 0] + }, + { + "i": {"x": 0.833, "y": 0.939}, + "o": {"x": 0.167, "y": 0.072}, + "t": 8, + "s": [301.355, 268.994, 0], + "to": [1.56, -1.916, 0], + "ti": [-1.325, 1.619, 0] + }, + { + "i": {"x": 0.833, "y": 0.936}, + "o": {"x": 0.167, "y": 0.074}, + "t": 8.8, + "s": [305.606, 263.727, 0], + "to": [1.325, -1.619, 0], + "ti": [-1.185, 1.356, 0] + }, + { + "i": {"x": 0.833, "y": 0.928}, + "o": {"x": 0.167, "y": 0.082}, + "t": 9.6, + "s": [309.304, 259.281, 0], + "to": [1.185, -1.356, 0], + "ti": [-1.147, 1.074, 0] + }, + { + "i": {"x": 0.833, "y": 0.906}, + "o": {"x": 0.167, "y": 0.107}, + "t": 10.4, + "s": [312.714, 255.59, 0], + "to": [1.147, -1.074, 0], + "ti": [-1.205, 0.459, 0] + }, + { + "i": {"x": 0.833, "y": 0.845}, + "o": {"x": 0.167, "y": 0.17}, + "t": 11.2, + "s": [316.183, 252.839, 0], + "to": [1.205, -0.459, 0], + "ti": [-0.955, -0.508, 0] + }, + { + "i": {"x": 0.833, "y": 0.955}, + "o": {"x": 0.167, "y": 0.049}, + "t": 12, + "s": [319.947, 252.839, 0], + "to": [0.955, 0.508, 0], + "ti": [-0.499, -1.03, 0] + }, + { + "i": {"x": 0.833, "y": 0.984}, + "o": {"x": 0.167, "y": 0.017}, + "t": 12.8, + "s": [321.913, 255.888, 0], + "to": [0.499, 1.03, 0], + "ti": [-0.292, -1.003, 0] + }, + { + "i": {"x": 0.833, "y": 0.991}, + "o": {"x": 0.167, "y": 0.01}, + "t": 13.6, + "s": [322.944, 259.018, 0], + "to": [0.292, 1.003, 0], + "ti": [-0.216, -0.921, 0] + }, + { + "i": {"x": 0.833, "y": 0.993}, + "o": {"x": 0.167, "y": 0.008}, + "t": 14.4, + "s": [323.663, 261.908, 0], + "to": [0.216, 0.921, 0], + "ti": [-0.18, -0.838, 0] + }, + { + "i": {"x": 0.833, "y": 0.993}, + "o": {"x": 0.167, "y": 0.007}, + "t": 15.2, + "s": [324.24, 264.543, 0], + "to": [0.18, 0.838, 0], + "ti": [-0.16, -0.762, 0] + }, + { + "i": {"x": 0.833, "y": 0.993}, + "o": {"x": 0.167, "y": 0.007}, + "t": 16, + "s": [324.742, 266.939, 0], + "to": [0.16, 0.762, 0], + "ti": [-0.149, -0.692, 0] + }, + { + "i": {"x": 0.833, "y": 0.993}, + "o": {"x": 0.167, "y": 0.008}, + "t": 16.8, + "s": [325.202, 269.115, 0], + "to": [0.149, 0.692, 0], + "ti": [-0.143, -0.628, 0] + }, + { + "i": {"x": 0.833, "y": 0.992}, + "o": {"x": 0.167, "y": 0.009}, + "t": 17.6, + "s": [325.638, 271.093, 0], + "to": [0.143, 0.628, 0], + "ti": [-0.139, -0.568, 0] + }, + { + "i": {"x": 0.833, "y": 0.99}, + "o": {"x": 0.167, "y": 0.011}, + "t": 18.4, + "s": [326.06, 272.884, 0], + "to": [0.139, 0.568, 0], + "ti": [-0.136, -0.513, 0] + }, + { + "i": {"x": 0.833, "y": 0.989}, + "o": {"x": 0.167, "y": 0.013}, + "t": 19.2, + "s": [326.472, 274.503, 0], + "to": [0.136, 0.513, 0], + "ti": [-0.134, -0.461, 0] + }, + { + "i": {"x": 0.833, "y": 0.987}, + "o": {"x": 0.167, "y": 0.015}, + "t": 20, + "s": [326.877, 275.962, 0], + "to": [0.134, 0.461, 0], + "ti": [-0.131, -0.413, 0] + }, + { + "i": {"x": 0.833, "y": 0.984}, + "o": {"x": 0.167, "y": 0.017}, + "t": 20.8, + "s": [327.274, 277.271, 0], + "to": [0.131, 0.413, 0], + "ti": [-0.128, -0.369, 0] + }, + { + "i": {"x": 0.833, "y": 0.982}, + "o": {"x": 0.167, "y": 0.02}, + "t": 21.6, + "s": [327.663, 278.442, 0], + "to": [0.128, 0.369, 0], + "ti": [-0.123, -0.327, 0] + }, + { + "i": {"x": 0.833, "y": 0.979}, + "o": {"x": 0.167, "y": 0.024}, + "t": 22.4, + "s": [328.039, 279.483, 0], + "to": [0.123, 0.327, 0], + "ti": [-0.117, -0.287, 0] + }, + { + "i": {"x": 0.833, "y": 0.976}, + "o": {"x": 0.167, "y": 0.027}, + "t": 23.2, + "s": [328.401, 280.402, 0], + "to": [0.117, 0.287, 0], + "ti": [-0.109, -0.251, 0] + }, + { + "i": {"x": 0.833, "y": 0.974}, + "o": {"x": 0.167, "y": 0.03}, + "t": 24, + "s": [328.742, 281.208, 0], + "to": [0.109, 0.251, 0], + "ti": [-0.095, -0.217, 0] + }, + { + "i": {"x": 0.833, "y": 0.976}, + "o": {"x": 0.167, "y": 0.028}, + "t": 24.8, + "s": [329.057, 281.906, 0], + "to": [0.095, 0.217, 0], + "ti": [-0.065, -0.188, 0] + }, + { + "i": {"x": 0.833, "y": 0.991}, + "o": {"x": 0.167, "y": 0.011}, + "t": 25.6, + "s": [329.315, 282.507, 0], + "to": [0.065, 0.188, 0], + "ti": [-0.024, -0.165, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26.4, + "s": [329.447, 283.036, 0], + "to": [0.024, 0.165, 0], + "ti": [0.014, -0.145, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 27.2, + "s": [329.46, 283.5, 0], + "to": [-0.014, 0.145, 0], + "ti": [0.05, -0.126, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28, + "s": [329.361, 283.904, 0], + "to": [-0.05, 0.126, 0], + "ti": [0.083, -0.109, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28.8, + "s": [329.16, 284.255, 0], + "to": [-0.083, 0.109, 0], + "ti": [0.113, -0.092, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 29.6, + "s": [328.864, 284.555, 0], + "to": [-0.113, 0.092, 0], + "ti": [0.14, -0.078, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 30.4, + "s": [328.482, 284.81, 0], + "to": [-0.14, 0.078, 0], + "ti": [0.165, -0.064, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 31.2, + "s": [328.022, 285.021, 0], + "to": [-0.165, 0.064, 0], + "ti": [0.187, -0.05, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32, + "s": [327.492, 285.191, 0], + "to": [-0.187, 0.05, 0], + "ti": [0.206, -0.038, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [326.902, 285.323, 0], + "to": [-0.206, 0.038, 0], + "ti": [0.222, -0.026, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [326.259, 285.418, 0], + "to": [-0.222, 0.026, 0], + "ti": [0.235, -0.015, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [325.573, 285.479, 0], + "to": [-0.235, 0.015, 0], + "ti": [0.245, -0.007, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 35.2, + "s": [324.851, 285.506, 0], + "to": [-0.245, 0.007, 0], + "ti": [0.251, -0.008, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36, + "s": [324.104, 285.522, 0], + "to": [-0.251, 0.008, 0], + "ti": [0.255, -0.011, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36.8, + "s": [323.342, 285.551, 0], + "to": [-0.255, 0.011, 0], + "ti": [0.256, -0.015, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 37.6, + "s": [322.574, 285.591, 0], + "to": [-0.256, 0.015, 0], + "ti": [0.254, -0.018, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 38.4, + "s": [321.808, 285.64, 0], + "to": [-0.254, 0.018, 0], + "ti": [0.248, -0.02, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 39.2, + "s": [321.053, 285.698, 0], + "to": [-0.248, 0.02, 0], + "ti": [0.24, -0.022, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40, + "s": [320.318, 285.762, 0], + "to": [-0.24, 0.022, 0], + "ti": [0.229, -0.023, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40.8, + "s": [319.612, 285.831, 0], + "to": [-0.229, 0.023, 0], + "ti": [0.214, -0.024, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 41.6, + "s": [318.945, 285.902, 0], + "to": [-0.214, 0.024, 0], + "ti": [0.197, -0.024, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 42.4, + "s": [318.326, 285.973, 0], + "to": [-0.197, 0.024, 0], + "ti": [0.176, -0.022, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 43.2, + "s": [317.764, 286.043, 0], + "to": [-0.176, 0.022, 0], + "ti": [0.153, -0.02, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44, + "s": [317.268, 286.108, 0], + "to": [-0.153, 0.02, 0], + "ti": [0.126, -0.017, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44.8, + "s": [316.848, 286.165, 0], + "to": [-0.126, 0.017, 0], + "ti": [0.096, -0.013, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 45.6, + "s": [316.513, 286.212, 0], + "to": [-0.096, 0.013, 0], + "ti": [0.062, -0.008, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 46.4, + "s": [316.273, 286.245, 0], + "to": [-0.062, 0.008, 0], + "ti": [0.022, -0.003, 0] + }, + {"t": 47.2001953125, "s": [316.139, 286.261, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.112, 0.057, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 3.2, + "s": [102.583, 113.906, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.982, 0.964, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.048, 0.091, 0]}, + "t": 4, + "s": [89.34, 107.749, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.826, 0.789, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.023, -0.063, 0]}, + "t": 4.8, + "s": [120.4, 44.201, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.974, 0.965, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.16, 0.138, 0]}, + "t": 5.6, + "s": [96.055, 80.415, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.007, 0.953, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.038, -0.061, 0]}, + "t": 6.4, + "s": [69.666, 135.77, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.054, 1.124, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.007, -0.107, 0]}, + "t": 7.2, + "s": [87.726, 103.756, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.958, 0.931, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.033, 0.05, 0]}, + "t": 8, + "s": [68.046, 117.794, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.847, 0.448, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.085, -0.418, 0]}, + "t": 8.8, + "s": [100.548, 82.836, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.903, 0.976, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.184, 0.098, 0]}, + "t": 9.6, + "s": [84.441, 88.646, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.653, 0.719, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.581, -0.033, 0]}, + "t": 10.4, + "s": [71.053, 121.348, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.928, 0.925, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.079, 0.118, 0]}, + "t": 11.2, + "s": [68.813, 98.016, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.876, -0.382, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.52, -0.749, 0]}, + "t": 12, + "s": [115.484, 42.548, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.015, 0.928, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.255, 0.089, 0]}, + "t": 12.8, + "s": [109.038, 48.103, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.942, 0.908, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.091, -0.517, 0]}, + "t": 13.6, + "s": [105.912, 134.682, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.984, -0.015, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.189, 0.903, 0]}, + "t": 14.4, + "s": [70.98, 122.635, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.191, 0.613, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.021, 0.091, 0]}, + "t": 15.2, + "s": [81.664, 121.409, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.88, 0.999, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.058, 0.106, 0]}, + "t": 16, + "s": [73.094, 107.712, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.105, 1.007, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.271, -0.001, 0]}, + "t": 16.8, + "s": [101.314, 57.875, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.034, 0.913, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.046, 0.006, 0]}, + "t": 17.6, + "s": [113.878, 107.014, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.956, 0.958, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.024, 1.786, 0]}, + "t": 18.4, + "s": [85.547, 53.745, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.812, -0.974, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.094, -0.086, 0]}, + "t": 19.2, + "s": [125.423, 51.139, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.021, 0.814, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.149, 0.087, 0]}, + "t": 20, + "s": [106.714, 52.421, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.926, 0.902, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.017, 0.151, 0]}, + "t": 20.8, + "s": [83.118, 81.524, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.571, 1.518, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.69, 0.543, 0]}, + "t": 21.6, + "s": [112.603, 117.515, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.176, 0.931, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.103, 0.072, 0]}, + "t": 22.4, + "s": [109.423, 124.06, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.971, 0.91, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.057, -0.391, 0]}, + "t": 23.2, + "s": [96.227, 76.928, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.758, 5.316, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.044, 1.133, 0]}, + "t": 24, + "s": [137.222, 85.21, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.901, 0.966, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.127, 0.082, 0]}, + "t": 24.8, + "s": [110.401, 85.868, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.016, 0.988, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.528, -0.056, 0]}, + "t": 25.6, + "s": [59.435, 51.153, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.802, 1.05, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.013, -0.013, 0]}, + "t": 26.4, + "s": [49.857, 71.912, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.11, 0.966, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.144, 0.031, 0]}, + "t": 27.2, + "s": [61.259, 54.038, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.954, 0.88, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.047, -0.059, 0]}, + "t": 28, + "s": [76.982, 82.665, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.849, 1.149, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.103, 0.274, 0]}, + "t": 28.8, + "s": [40.562, 65.859, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.016, 1.039, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.187, 0.053, 0]}, + "t": 29.6, + "s": [56.885, 58.517, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.025, 0.918, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.013, 0.027, 0]}, + "t": 30.4, + "s": [70.044, 78.995, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.03, 2.634, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.019, -7.022, 0]}, + "t": 31.2, + "s": [54.364, 48.853, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.85, 0.699, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.022, 0.079, 0]}, + "t": 32, + "s": [74.752, 49.207, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.102, 1.073, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.188, 0.115, 0]}, + "t": 32.8, + "s": [46.926, 41.924, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.008, 0.973, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.046, 0.039, 0]}, + "t": 33.6, + "s": [24.667, 22.936, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.923, 0.941, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.008, -0.041, 0]}, + "t": 34.4, + "s": [74.072, 58.487, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.782, 0.823, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.08, -0.204, 0]}, + "t": 35.2, + "s": [19.734, 34.651, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.772, 1.167, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.135, 0.158, 0]}, + "t": 36, + "s": [23.626, 41.571, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.128, 1.109, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.131, 0.056, 0]}, + "t": 36.8, + "s": [29.896, 49.314, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.837, 1.026, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.05, 0.047, 0]}, + "t": 37.6, + "s": [40.776, 26.063, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.946, 0.975, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.171, 0.02, 0]}, + "t": 38.4, + "s": [13.174, 79.764, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.934, 0.928, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.153, -0.036, 0]}, + "t": 39.2, + "s": [-13.177, 9.252, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.831, 0.665, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.32, -0.508, 0]}, + "t": 40, + "s": [-3.882, 58.452, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.879, 0.883, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.076, 0.111, 0]}, + "t": 40.8, + "s": [-5.803, 51.522, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.861, 0.931, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.266, 0.29, 0]}, + "t": 41.6, + "s": [15.263, 30.594, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.125, 2.138, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.208, -0.398, 0]}, + "t": 42.4, + "s": [24.861, 22.138, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.882, 0.968, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.05, 0.078, 0]}, + "t": 43.2, + "s": [31.285, 23.603, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.155, 1.18, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.282, -0.051, 0]}, + "t": 44, + "s": [15.205, 2.136, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.018, 0.906, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.054, 0.057, 0]}, + "t": 44.8, + "s": [8.46, 15.435, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.07, 2.226, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.015, 0.738, 0]}, + "t": 45.6, + "s": [27.717, -26.636, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.038, 0.078, 0]}, + "t": 46.4, + "s": [4.398, -31.997, 100] + }, + {"t": 47.2001953125, "s": [47.278, 52.184, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ty": "sr", + "sy": 2, + "d": 1, + "pt": {"a": 0, "k": 3, "ix": 3}, + "p": {"a": 0, "k": [6, 32], "ix": 4}, + "r": {"a": 0, "k": 0, "ix": 5}, + "or": {"a": 0, "k": 6.599, "ix": 7}, + "os": {"a": 0, "k": 0, "ix": 9}, + "ix": 1, + "nm": "Polystar Path 1", + "mn": "ADBE Vector Shape - Star", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [0.167325377464, 0.716982424259, 1, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-7.382, -25.677], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Polystar 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 3.2001953125, + "op": 48, + "st": 3.2001953125, + "bm": 0 + }, + { + "ddd": 0, + "ind": 18, + "ty": 4, + "nm": "Shape Layer 34", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 8, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 12, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 29.6, + "s": [100] + }, + {"t": 42.400390625, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 92, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 0.744}, + "o": {"x": 0.167, "y": 0.113}, + "t": 8, + "s": [271.252, 303.813, 0], + "to": [0.284, -0.193, 0], + "ti": [-1.149, 1.055, 0] + }, + { + "i": {"x": 0.833, "y": 0.884}, + "o": {"x": 0.167, "y": 0.054}, + "t": 8.8, + "s": [272.957, 302.654, 0], + "to": [1.149, -1.055, 0], + "ti": [-2.022, 2.73, 0] + }, + { + "i": {"x": 0.833, "y": 0.951}, + "o": {"x": 0.167, "y": 0.036}, + "t": 9.6, + "s": [278.144, 297.481, 0], + "to": [2.022, -2.73, 0], + "ti": [-1.91, 4.187, 0] + }, + { + "i": {"x": 0.833, "y": 0.985}, + "o": {"x": 0.167, "y": 0.015}, + "t": 10.4, + "s": [285.092, 286.273, 0], + "to": [1.91, -4.187, 0], + "ti": [-1.055, 4.438, 0] + }, + { + "i": {"x": 0.833, "y": 0.997}, + "o": {"x": 0.167, "y": 0.004}, + "t": 11.2, + "s": [289.604, 272.358, 0], + "to": [1.055, -4.438, 0], + "ti": [-0.359, 3.914, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12, + "s": [291.42, 259.644, 0], + "to": [0.359, -3.914, 0], + "ti": [0.022, 3.308, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12.8, + "s": [291.76, 248.874, 0], + "to": [-0.022, -3.308, 0], + "ti": [0.239, 2.795, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 13.6, + "s": [291.291, 239.797, 0], + "to": [-0.239, -2.795, 0], + "ti": [0.374, 2.38, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 14.4, + "s": [290.325, 232.102, 0], + "to": [-0.374, -2.38, 0], + "ti": [0.463, 2.046, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 15.2, + "s": [289.046, 225.517, 0], + "to": [-0.463, -2.046, 0], + "ti": [0.527, 1.772, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16, + "s": [287.548, 219.827, 0], + "to": [-0.527, -1.772, 0], + "ti": [0.577, 1.542, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16.8, + "s": [285.886, 214.884, 0], + "to": [-0.577, -1.542, 0], + "ti": [0.62, 1.344, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 17.6, + "s": [284.087, 210.573, 0], + "to": [-0.62, -1.344, 0], + "ti": [0.662, 1.168, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [282.165, 206.818, 0], + "to": [-0.662, -1.168, 0], + "ti": [0.709, 1.006, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [280.115, 203.564, 0], + "to": [-0.709, -1.006, 0], + "ti": [0.773, 0.841, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20, + "s": [277.909, 200.78, 0], + "to": [-0.773, -0.841, 0], + "ti": [0.882, 0.613, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [275.475, 198.518, 0], + "to": [-0.882, -0.613, 0], + "ti": [0.968, 0.094, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 21.6, + "s": [272.616, 197.104, 0], + "to": [-0.968, -0.094, 0], + "ti": [0.794, -0.512, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 22.4, + "s": [269.666, 197.956, 0], + "to": [-0.794, 0.512, 0], + "ti": [0.517, -0.748, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 23.2, + "s": [267.851, 200.177, 0], + "to": [-0.517, 0.748, 0], + "ti": [0.389, -0.735, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24, + "s": [266.566, 202.443, 0], + "to": [-0.389, 0.735, 0], + "ti": [0.329, -0.691, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24.8, + "s": [265.514, 204.588, 0], + "to": [-0.329, 0.691, 0], + "ti": [0.293, -0.642, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 25.6, + "s": [264.591, 206.588, 0], + "to": [-0.293, 0.642, 0], + "ti": [0.267, -0.593, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26.4, + "s": [263.756, 208.44, 0], + "to": [-0.267, 0.593, 0], + "ti": [0.245, -0.545, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 27.2, + "s": [262.99, 210.145, 0], + "to": [-0.245, 0.545, 0], + "ti": [0.226, -0.497, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28, + "s": [262.283, 211.707, 0], + "to": [-0.226, 0.497, 0], + "ti": [0.206, -0.451, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28.8, + "s": [261.635, 213.129, 0], + "to": [-0.206, 0.451, 0], + "ti": [0.186, -0.406, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 29.6, + "s": [261.046, 214.413, 0], + "to": [-0.186, 0.406, 0], + "ti": [0.164, -0.36, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 30.4, + "s": [260.52, 215.562, 0], + "to": [-0.164, 0.36, 0], + "ti": [0.14, -0.315, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 31.2, + "s": [260.062, 216.575, 0], + "to": [-0.14, 0.315, 0], + "ti": [0.114, -0.269, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32, + "s": [259.679, 217.45, 0], + "to": [-0.114, 0.269, 0], + "ti": [0.086, -0.224, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [259.376, 218.188, 0], + "to": [-0.086, 0.224, 0], + "ti": [0.055, -0.178, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [259.162, 218.791, 0], + "to": [-0.055, 0.178, 0], + "ti": [0.022, -0.132, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [259.045, 219.258, 0], + "to": [-0.022, 0.132, 0], + "ti": [-0.015, -0.086, 0] + }, + { + "i": {"x": 0.833, "y": 0.963}, + "o": {"x": 0.167, "y": 0.045}, + "t": 35.2, + "s": [259.032, 219.585, 0], + "to": [0.015, 0.086, 0], + "ti": [-0.054, -0.038, 0] + }, + { + "i": {"x": 0.833, "y": 0.814}, + "o": {"x": 0.167, "y": 0.152}, + "t": 36, + "s": [259.133, 219.772, 0], + "to": [0.054, 0.038, 0], + "ti": [-0.089, -0.002, 0] + }, + { + "i": {"x": 0.833, "y": 0.82}, + "o": {"x": 0.167, "y": 0.142}, + "t": 36.8, + "s": [259.355, 219.813, 0], + "to": [0.089, 0.002, 0], + "ti": [-0.114, 0.012, 0] + }, + { + "i": {"x": 0.833, "y": 0.825}, + "o": {"x": 0.167, "y": 0.151}, + "t": 37.6, + "s": [259.669, 219.787, 0], + "to": [0.114, -0.012, 0], + "ti": [-0.131, 0.018, 0] + }, + { + "i": {"x": 0.833, "y": 0.83}, + "o": {"x": 0.167, "y": 0.153}, + "t": 38.4, + "s": [260.041, 219.743, 0], + "to": [0.131, -0.018, 0], + "ti": [-0.144, 0.024, 0] + }, + { + "i": {"x": 0.833, "y": 0.836}, + "o": {"x": 0.167, "y": 0.156}, + "t": 39.2, + "s": [260.458, 219.681, 0], + "to": [0.144, -0.024, 0], + "ti": [-0.153, 0.025, 0] + }, + { + "i": {"x": 0.833, "y": 0.836}, + "o": {"x": 0.167, "y": 0.159}, + "t": 40, + "s": [260.907, 219.601, 0], + "to": [0.153, -0.025, 0], + "ti": [-0.159, 0.017, 0] + }, + { + "i": {"x": 0.833, "y": 0.833}, + "o": {"x": 0.167, "y": 0.165}, + "t": 40.8, + "s": [261.377, 219.531, 0], + "to": [0.159, -0.017, 0], + "ti": [-0.161, 0.006, 0] + }, + { + "i": {"x": 0.833, "y": 0.834}, + "o": {"x": 0.167, "y": 0.166}, + "t": 41.6, + "s": [261.86, 219.498, 0], + "to": [0.161, -0.006, 0], + "ti": [-0.161, -0.005, 0] + }, + { + "i": {"x": 0.833, "y": 0.836}, + "o": {"x": 0.167, "y": 0.168}, + "t": 42.4, + "s": [262.346, 219.497, 0], + "to": [0.161, 0.005, 0], + "ti": [-0.157, -0.014, 0] + }, + { + "i": {"x": 0.833, "y": 0.839}, + "o": {"x": 0.167, "y": 0.167}, + "t": 43.2, + "s": [262.825, 219.527, 0], + "to": [0.157, 0.014, 0], + "ti": [-0.151, -0.023, 0] + }, + { + "i": {"x": 0.833, "y": 0.844}, + "o": {"x": 0.167, "y": 0.164}, + "t": 44, + "s": [263.289, 219.583, 0], + "to": [0.151, 0.023, 0], + "ti": [-0.142, -0.03, 0] + }, + { + "i": {"x": 0.833, "y": 0.848}, + "o": {"x": 0.167, "y": 0.161}, + "t": 44.8, + "s": [263.73, 219.663, 0], + "to": [0.142, 0.03, 0], + "ti": [-0.132, -0.036, 0] + }, + { + "i": {"x": 0.833, "y": 0.854}, + "o": {"x": 0.167, "y": 0.158}, + "t": 45.6, + "s": [264.142, 219.763, 0], + "to": [0.132, 0.036, 0], + "ti": [-0.119, -0.041, 0] + }, + { + "i": {"x": 0.833, "y": 0.855}, + "o": {"x": 0.167, "y": 0.151}, + "t": 46.4, + "s": [264.519, 219.88, 0], + "to": [0.119, 0.041, 0], + "ti": [-0.056, -0.022, 0] + }, + {"t": 47.2001953125, "s": [264.857, 220.011, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.023, -0.027, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 8, + "s": [92.348, 80.588, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.063, 0.897, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.018, 0.091, 0]}, + "t": 8.8, + "s": [63.239, 83.148, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.953, 1.468, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.036, 0.435, 0]}, + "t": 9.6, + "s": [100.528, 112.151, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.799, 0.83, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.11, 0.071, 0]}, + "t": 10.4, + "s": [34.84, 119.029, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.908, 1.046, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.142, 0.163, 0]}, + "t": 11.2, + "s": [63.172, 73.511, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.12, 0.916, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.917, 0.03, 0]}, + "t": 12, + "s": [103.227, 26.126, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.04, -2.323, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.049, 10.204, 0]}, + "t": 12.8, + "s": [107.23, 99.638, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.987, 0.97, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.027, 0.085, 0]}, + "t": 13.6, + "s": [97.456, 100.244, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.007, 0.792, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.016, -0.047, 0]}, + "t": 14.4, + "s": [111.909, 123.776, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.079, 0.895, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.006, 0.139, 0]}, + "t": 15.2, + "s": [99.739, 108.689, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.885, 0.438, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.04, 0.401, 0]}, + "t": 16, + "s": [112.92, 86.203, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.27, 0.904, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.304, 0.098, 0]}, + "t": 16.8, + "s": [87.298, 80.298, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.89, 1.161, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.064, 0.639, 0]}, + "t": 17.6, + "s": [77.606, 46.38, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.303, 0.905, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.348, 0.055, 0]}, + "t": 18.4, + "s": [118.751, 41.284, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.938, -2.245, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.065, 0.688, 0]}, + "t": 19.2, + "s": [131.696, 56.225, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.997, 0.922, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.244, 0.086, 0]}, + "t": 20, + "s": [71.627, 58.284, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.977, 0.56, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.003, -1.183, 0]}, + "t": 20.8, + "s": [86.93, 136.413, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.554, 0.858, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.032, 0.103, 0]}, + "t": 21.6, + "s": [72.183, 131.272, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.904, 0.976, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.102, 0.202, 0]}, + "t": 22.4, + "s": [82.81, 109.279, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.416, 0.998, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.64, -0.034, 0]}, + "t": 23.2, + "s": [129.066, 93.807, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.845, 0.765, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.069, -0.002, 0]}, + "t": 24, + "s": [135.997, 104.839, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.974, 0.903, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.18, 0.129, 0]}, + "t": 24.8, + "s": [94.456, 94.071, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.873, 1.618, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.038, 0.6, 0]}, + "t": 25.6, + "s": [58.778, 74.421, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.889, 0.949, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.243, 0.073, 0]}, + "t": 26.4, + "s": [83.328, 71.244, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.695, 0.802, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.338, -0.134, 0]}, + "t": 27.2, + "s": [96.122, 97.929, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.062, 1.055, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.115, 0.144, 0]}, + "t": 28, + "s": [100.314, 87.693, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.795, 0.999, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.036, 0.033, 0]}, + "t": 28.8, + "s": [111.459, 73.549, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.993, 0.898, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.141, -0.002, 0]}, + "t": 29.6, + "s": [91.979, 97.003, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.87, 1.251, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.007, 0.447, 0]}, + "t": 30.4, + "s": [63.62, 73.964, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.09, 1.06, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.232, 0.063, 0]}, + "t": 31.2, + "s": [89.728, 68.683, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.977, 1, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.043, 0.035, 0]}, + "t": 32, + "s": [104.347, 89.888, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.984, 1.034, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.032, 0, 0]}, + "t": 32.8, + "s": [74.014, 53.405, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.81, 0.943, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.02, 0.024, 0]}, + "t": 33.6, + "s": [95.84, 90.08, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.816, 0.763, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.148, -0.184, 0]}, + "t": 34.4, + "s": [78.32, 38.425, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.899, 0.993, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.152, 0.129, 0]}, + "t": 35.2, + "s": [55.867, 54.538, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.701, 0.99, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.487, -0.007, 0]}, + "t": 36, + "s": [28.81, 84.258, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.904, 1.154, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.115, -0.011, 0]}, + "t": 36.8, + "s": [23.23, 56.921, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.701, 0.959, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.612, 0.054, 0]}, + "t": 37.6, + "s": [8.759, 81.032, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.089, 0.935, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.116, -0.083, 0]}, + "t": 38.4, + "s": [6.473, 12.233, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.758, 1.033, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.043, -0.293, 0]}, + "t": 39.2, + "s": [0.558, 46.8, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.984, 1.273, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.127, 0.023, 0]}, + "t": 40, + "s": [12.808, 39.141, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.938, 0.953, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.02, 0.064, 0]}, + "t": 40.8, + "s": [36.176, 49.79, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.867, 0.954, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.242, -0.11, 0]}, + "t": 41.6, + "s": [17.41, 4.217, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.67, 0.939, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.224, -0.102, 0]}, + "t": 42.4, + "s": [22.21, 23.867, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.825, 1.394, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.112, -0.223, 0]}, + "t": 43.2, + "s": [25.048, 15.014, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.216, 0.678, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.159, 0.069, 0]}, + "t": 44, + "s": [33.433, 17.425, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.985, 1.08, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.06, 0.112, 0]}, + "t": 44.8, + "s": [42.612, 3.611, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.012, 0.926, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.019, 0.041, 0]}, + "t": 45.6, + "s": [9.673, -36.008, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.01, -0.68, 0]}, + "t": 46.4, + "s": [36.625, 41.5, 100] + }, + {"t": 47.2001953125, "s": [5.886, 33.044, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "o": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "v": [ + [0.012, 10.621], + [-5.695, 5.34], + [-2.557, -7.377], + [3.15, -2.096] + ], + "c": true + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [1, 0.89411765337, 0.113725490868, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-3.421, 4.043], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Rectangle 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 8, + "op": 48, + "st": 8, + "bm": 0 + }, + { + "ddd": 0, + "ind": 19, + "ty": 4, + "nm": "Shape Layer 33", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 0.8, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 4.8, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 22.4, + "s": [100] + }, + {"t": 35.2001953125, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 92, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 0.796}, + "o": {"x": 0.167, "y": 0.094}, + "t": 0.8, + "s": [270.415, 303.961, 0], + "to": [0.303, -0.268, 0], + "ti": [-1.389, 1.063, 0] + }, + { + "i": {"x": 0.833, "y": 0.872}, + "o": {"x": 0.167, "y": 0.068}, + "t": 1.6, + "s": [272.233, 302.354, 0], + "to": [1.389, -1.063, 0], + "ti": [-2.915, 0.504, 0] + }, + { + "i": {"x": 0.833, "y": 0.826}, + "o": {"x": 0.167, "y": 0.125}, + "t": 2.4, + "s": [278.751, 297.585, 0], + "to": [2.915, -0.504, 0], + "ti": [-1.552, -2.903, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 3.2, + "s": [289.724, 299.332, 0], + "to": [1.552, 2.903, 0], + "ti": [0.807, -4.867, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 4, + "s": [288.065, 315.004, 0], + "to": [-0.807, 4.867, 0], + "ti": [1.017, -4.14, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 4.8, + "s": [284.884, 328.537, 0], + "to": [-1.017, 4.14, 0], + "ti": [0.905, -3.485, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 5.6, + "s": [281.965, 339.842, 0], + "to": [-0.905, 3.485, 0], + "ti": [0.776, -2.987, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 6.4, + "s": [279.455, 349.449, 0], + "to": [-0.776, 2.987, 0], + "ti": [0.667, -2.607, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 7.2, + "s": [277.308, 357.764, 0], + "to": [-0.667, 2.607, 0], + "ti": [0.578, -2.312, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8, + "s": [275.455, 365.094, 0], + "to": [-0.578, 2.312, 0], + "ti": [0.505, -2.074, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [273.842, 371.638, 0], + "to": [-0.505, 2.074, 0], + "ti": [0.444, -1.876, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [272.427, 377.536, 0], + "to": [-0.444, 1.876, 0], + "ti": [0.393, -1.708, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 10.4, + "s": [271.178, 382.891, 0], + "to": [-0.393, 1.708, 0], + "ti": [0.349, -1.562, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 11.2, + "s": [270.071, 387.781, 0], + "to": [-0.349, 1.562, 0], + "ti": [0.31, -1.434, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12, + "s": [269.086, 392.264, 0], + "to": [-0.31, 1.434, 0], + "ti": [0.275, -1.32, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12.8, + "s": [268.211, 396.386, 0], + "to": [-0.275, 1.32, 0], + "ti": [0.243, -1.215, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 13.6, + "s": [267.436, 400.181, 0], + "to": [-0.243, 1.215, 0], + "ti": [0.213, -1.118, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 14.4, + "s": [266.752, 403.676, 0], + "to": [-0.213, 1.118, 0], + "ti": [0.185, -1.028, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 15.2, + "s": [266.156, 406.891, 0], + "to": [-0.185, 1.028, 0], + "ti": [0.158, -0.941, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16, + "s": [265.642, 409.842, 0], + "to": [-0.158, 0.941, 0], + "ti": [0.131, -0.859, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16.8, + "s": [265.209, 412.54, 0], + "to": [-0.131, 0.859, 0], + "ti": [0.105, -0.779, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 17.6, + "s": [264.855, 414.996, 0], + "to": [-0.105, 0.779, 0], + "ti": [0.078, -0.702, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [264.581, 417.216, 0], + "to": [-0.078, 0.702, 0], + "ti": [0.051, -0.625, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [264.386, 419.205, 0], + "to": [-0.051, 0.625, 0], + "ti": [0.024, -0.55, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20, + "s": [264.272, 420.968, 0], + "to": [-0.024, 0.55, 0], + "ti": [-0.004, -0.475, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [264.241, 422.506, 0], + "to": [0.004, 0.475, 0], + "ti": [-0.032, -0.401, 0] + }, + { + "i": {"x": 0.833, "y": 0.998}, + "o": {"x": 0.167, "y": 0.003}, + "t": 21.6, + "s": [264.295, 423.82, 0], + "to": [0.032, 0.401, 0], + "ti": [-0.062, -0.326, 0] + }, + { + "i": {"x": 0.833, "y": 0.99}, + "o": {"x": 0.167, "y": 0.012}, + "t": 22.4, + "s": [264.435, 424.912, 0], + "to": [0.062, 0.326, 0], + "ti": [-0.092, -0.251, 0] + }, + { + "i": {"x": 0.833, "y": 0.969}, + "o": {"x": 0.167, "y": 0.038}, + "t": 23.2, + "s": [264.666, 425.779, 0], + "to": [0.092, 0.251, 0], + "ti": [-0.123, -0.178, 0] + }, + { + "i": {"x": 0.833, "y": 0.923}, + "o": {"x": 0.167, "y": 0.088}, + "t": 24, + "s": [264.99, 426.419, 0], + "to": [0.123, 0.178, 0], + "ti": [-0.144, -0.125, 0] + }, + { + "i": {"x": 0.833, "y": 0.892}, + "o": {"x": 0.167, "y": 0.115}, + "t": 24.8, + "s": [265.403, 426.848, 0], + "to": [0.144, 0.125, 0], + "ti": [-0.154, -0.094, 0] + }, + { + "i": {"x": 0.833, "y": 0.871}, + "o": {"x": 0.167, "y": 0.135}, + "t": 25.6, + "s": [265.856, 427.168, 0], + "to": [0.154, 0.094, 0], + "ti": [-0.158, -0.068, 0] + }, + { + "i": {"x": 0.833, "y": 0.856}, + "o": {"x": 0.167, "y": 0.151}, + "t": 26.4, + "s": [266.328, 427.409, 0], + "to": [0.158, 0.068, 0], + "ti": [-0.158, -0.046, 0] + }, + { + "i": {"x": 0.833, "y": 0.846}, + "o": {"x": 0.167, "y": 0.163}, + "t": 27.2, + "s": [266.806, 427.579, 0], + "to": [0.158, 0.046, 0], + "ti": [-0.155, -0.026, 0] + }, + { + "i": {"x": 0.833, "y": 0.84}, + "o": {"x": 0.167, "y": 0.169}, + "t": 28, + "s": [267.278, 427.686, 0], + "to": [0.155, 0.026, 0], + "ti": [-0.148, -0.008, 0] + }, + { + "i": {"x": 0.833, "y": 0.839}, + "o": {"x": 0.167, "y": 0.172}, + "t": 28.8, + "s": [267.736, 427.736, 0], + "to": [0.148, 0.008, 0], + "ti": [-0.139, 0.007, 0] + }, + { + "i": {"x": 0.833, "y": 0.842}, + "o": {"x": 0.167, "y": 0.171}, + "t": 29.6, + "s": [268.169, 427.736, 0], + "to": [0.139, -0.007, 0], + "ti": [-0.127, 0.022, 0] + }, + { + "i": {"x": 0.833, "y": 0.848}, + "o": {"x": 0.167, "y": 0.164}, + "t": 30.4, + "s": [268.571, 427.692, 0], + "to": [0.127, -0.022, 0], + "ti": [-0.114, 0.034, 0] + }, + { + "i": {"x": 0.833, "y": 0.862}, + "o": {"x": 0.167, "y": 0.151}, + "t": 31.2, + "s": [268.934, 427.607, 0], + "to": [0.114, -0.034, 0], + "ti": [-0.098, 0.046, 0] + }, + { + "i": {"x": 0.833, "y": 0.883}, + "o": {"x": 0.167, "y": 0.132}, + "t": 32, + "s": [269.252, 427.486, 0], + "to": [0.098, -0.046, 0], + "ti": [-0.081, 0.051, 0] + }, + { + "i": {"x": 0.833, "y": 0.901}, + "o": {"x": 0.167, "y": 0.12}, + "t": 32.8, + "s": [269.522, 427.333, 0], + "to": [0.081, -0.051, 0], + "ti": [-0.064, 0.046, 0] + }, + { + "i": {"x": 0.833, "y": 0.907}, + "o": {"x": 0.167, "y": 0.126}, + "t": 33.6, + "s": [269.74, 427.18, 0], + "to": [0.064, -0.046, 0], + "ti": [-0.047, 0.035, 0] + }, + { + "i": {"x": 0.833, "y": 0.918}, + "o": {"x": 0.167, "y": 0.125}, + "t": 34.4, + "s": [269.907, 427.059, 0], + "to": [0.047, -0.035, 0], + "ti": [-0.029, 0.025, 0] + }, + { + "i": {"x": 0.833, "y": 0.941}, + "o": {"x": 0.167, "y": 0.113}, + "t": 35.2, + "s": [270.02, 426.97, 0], + "to": [0.029, -0.025, 0], + "ti": [-0.011, 0.015, 0] + }, + { + "i": {"x": 0.833, "y": 0.997}, + "o": {"x": 0.167, "y": 0.004}, + "t": 36, + "s": [270.079, 426.911, 0], + "to": [0.011, -0.015, 0], + "ti": [0.007, 0.006, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36.8, + "s": [270.083, 426.879, 0], + "to": [-0.007, -0.006, 0], + "ti": [0.025, -0.002, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 37.6, + "s": [270.035, 426.873, 0], + "to": [-0.025, 0.002, 0], + "ti": [0.041, -0.009, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 38.4, + "s": [269.935, 426.889, 0], + "to": [-0.041, 0.009, 0], + "ti": [0.056, -0.014, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 39.2, + "s": [269.788, 426.925, 0], + "to": [-0.056, 0.014, 0], + "ti": [0.07, -0.019, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40, + "s": [269.597, 426.976, 0], + "to": [-0.07, 0.019, 0], + "ti": [0.082, -0.022, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40.8, + "s": [269.367, 427.038, 0], + "to": [-0.082, 0.022, 0], + "ti": [0.092, -0.023, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 41.6, + "s": [269.104, 427.106, 0], + "to": [-0.092, 0.023, 0], + "ti": [0.099, -0.022, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 42.4, + "s": [268.815, 427.175, 0], + "to": [-0.099, 0.022, 0], + "ti": [0.104, -0.02, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 43.2, + "s": [268.508, 427.24, 0], + "to": [-0.104, 0.02, 0], + "ti": [0.105, -0.015, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44, + "s": [268.192, 427.293, 0], + "to": [-0.105, 0.015, 0], + "ti": [0.103, -0.008, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44.8, + "s": [267.876, 427.329, 0], + "to": [-0.103, 0.008, 0], + "ti": [0.098, 0.002, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 45.6, + "s": [267.571, 427.341, 0], + "to": [-0.098, -0.002, 0], + "ti": [0.088, 0.014, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 46.4, + "s": [267.289, 427.32, 0], + "to": [-0.088, -0.014, 0], + "ti": [0.041, 0.01, 0] + }, + {"t": 47.2001953125, "s": [267.042, 427.258, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.161, 0.992, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 0.8, + "s": [88.706, 125.309, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.987, 0.969, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.055, -0.009, 0]}, + "t": 1.6, + "s": [101.05, 65.647, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.822, 0.862, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.015, -0.05, 0]}, + "t": 2.4, + "s": [64.822, 119.625, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.03, 1.194, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.156, 0.21, 0]}, + "t": 3.2, + "s": [95.37, 85.974, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.939, 0.943, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.022, 0.058, 0]}, + "t": 4, + "s": [130.225, 63.782, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.866, 0.793, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.229, -0.185, 0]}, + "t": 4.8, + "s": [82.767, 137.754, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.05, 0.961, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.219, 0.139, 0]}, + "t": 5.6, + "s": [95.438, 114.769, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.544, 0.867, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.031, -0.072, 0]}, + "t": 6.4, + "s": [103.2, 80.591, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.032, 0.895, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.102, 0.224, 0]}, + "t": 7.2, + "s": [90.818, 98.938, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.967, 0.336, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.023, 0.402, 0]}, + "t": 8, + "s": [35.459, 109.792, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.842, 1.105, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.056, 0.095, 0]}, + "t": 8.8, + "s": [111.828, 112.627, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.085, 0.874, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.176, 0.046, 0]}, + "t": 9.6, + "s": [66.113, 132.396, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.934, 0.924, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.042, 0.248, 0]}, + "t": 10.4, + "s": [25.062, 87.733, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.884, 1.494, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.328, -0.831, 0]}, + "t": 11.2, + "s": [107.997, 65.085, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.34, 1.282, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.298, 0.071, 0]}, + "t": 12, + "s": [91.212, 67.15, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.92, 0.947, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.067, 0.064, 0]}, + "t": 12.8, + "s": [84.699, 52.844, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.04, 0.928, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-2.067, -0.147, 0]}, + "t": 13.6, + "s": [117.811, 115.589, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.695, 1.984, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.027, -0.553, 0]}, + "t": 14.4, + "s": [116.527, 92.87, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.902, 0.923, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.079, 0.077, 0]}, + "t": 15.2, + "s": [118.433, 95.846, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.407, 0.784, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.556, -0.959, 0]}, + "t": 16, + "s": [77.764, 57.746, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.863, 0.619, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.069, 0.136, 0]}, + "t": 16.8, + "s": [70.59, 60.792, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.073, 1.124, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.213, 0.107, 0]}, + "t": 17.6, + "s": [112.827, 65.643, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.871, 1.062, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.039, 0.05, 0]}, + "t": 18.4, + "s": [139.959, 82.972, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.858, 0.887, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.235, 0.036, 0]}, + "t": 19.2, + "s": [89.044, 39.953, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.03, 1.025, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.202, 0.321, 0]}, + "t": 20, + "s": [61.106, 115.024, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.926, 0.861, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.022, 0.019, 0]}, + "t": 20.8, + "s": [41.52, 141.346, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.087, 0.818, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.675, 0.209, 0]}, + "t": 21.6, + "s": [68.262, 107.246, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.999, 0.94, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.077, 0.154, 0]}, + "t": 22.4, + "s": [65.317, 84.613, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.919, 1.127, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.001, -0.216, 0]}, + "t": 23.2, + "s": [106.651, 57.805, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.947, 0.938, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-3.287, 0.05, 0]}, + "t": 24, + "s": [66.005, 65.265, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-1.722, 0.574, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.143, -0.241, 0]}, + "t": 24.8, + "s": [67.009, 46.429, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.991, 1.067, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.086, 0.104, 0]}, + "t": 25.6, + "s": [66.639, 51.274, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.778, 0.921, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.01, 0.037, 0]}, + "t": 26.4, + "s": [54.923, 71.216, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.071, 0.741, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.133, -1.444, 0]}, + "t": 27.2, + "s": [65.427, 35.22, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.878, 1.091, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.038, 0.123, 0]}, + "t": 28, + "s": [82.893, 37.183, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.906, 0.828, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.264, 0.043, 0]}, + "t": 28.8, + "s": [50.525, 41.333, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.064, 1.344, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.748, 0.162, 0]}, + "t": 29.6, + "s": [35.563, 32.66, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.889, 1.002, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.077, 0.067, 0]}, + "t": 30.4, + "s": [33.685, 23.422, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.055, 0.924, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.331, 0.002, 0]}, + "t": 31.2, + "s": [59.517, 70.825, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.967, 1.608, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.033, -0.9, 0]}, + "t": 32, + "s": [68.226, 22.181, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.215, 0.945, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.055, 0.073, 0]}, + "t": 32.8, + "s": [53.746, 26.302, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.832, 0.514, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.06, -0.163, 0]}, + "t": 33.6, + "s": [62.499, -7.882, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.925, 0.968, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.166, 0.101, 0]}, + "t": 34.4, + "s": [31.128, 3.701, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.261, 0.975, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.72, -0.052, 0]}, + "t": 35.2, + "s": [-0.586, 59.702, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.131, 1.044, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.063, -0.035, 0]}, + "t": 36, + "s": [2.703, 25.328, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.938, 0.936, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.051, 0.029, 0]}, + "t": 36.8, + "s": [-10.892, 49.534, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.851, 0.962, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.242, -0.278, 0]}, + "t": 37.6, + "s": [24.109, 12.637, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.541, 1.12, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.189, -0.068, 0]}, + "t": 38.4, + "s": [15.151, 21.155, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.973, 1.225, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.072, 0.049, 0]}, + "t": 39.2, + "s": [8.06, 16.479, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.881, 0.962, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.04, 0.061, 0]}, + "t": 40, + "s": [61.168, 27.875, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.037, 0.929, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.278, -0.07, 0]}, + "t": 40.8, + "s": [25.413, -14.304, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.927, 1.674, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.026, -0.462, 0]}, + "t": 41.6, + "s": [10.106, 8.552, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.809, 0.934, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.597, 0.074, 0]}, + "t": 42.4, + "s": [32.24, 5.058, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.896, 0.766, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.148, -0.321, 0]}, + "t": 43.2, + "s": [29.528, 36.767, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.876, 1.171, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.422, 0.129, 0]}, + "t": 44, + "s": [26.015, 30.226, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.716, 0.961, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.252, 0.056, 0]}, + "t": 44.8, + "s": [25.151, 18.362, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.72, 0.812, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.118, -0.074, 0]}, + "t": 45.6, + "s": [24.725, 54.585, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.075, 0.15, 0]}, + "t": 46.4, + "s": [23.696, 35.402, 100] + }, + {"t": 47.2001953125, "s": [33.602, 11.392, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "o": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "v": [ + [0.012, 10.621], + [-5.695, 5.34], + [-2.557, -7.377], + [3.15, -2.096] + ], + "c": true + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [0.313725501299, 0.890196084976, 0.760784327984, 1], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-3.421, 4.043], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Rectangle 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0.7998046875, + "op": 48, + "st": 0.7998046875, + "bm": 0 + }, + { + "ddd": 0, + "ind": 20, + "ty": 4, + "nm": "Shape Layer 32", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 3.2, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 7.2, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 24.8, + "s": [100] + }, + {"t": 37.599609375, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 92, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 3.2, + "s": [267.904, 308.221, 0], + "to": [-0.062, -0.384, 0], + "ti": [-0.406, 2.013, 0] + }, + { + "i": {"x": 0.833, "y": 0.982}, + "o": {"x": 0.167, "y": 0.008}, + "t": 4, + "s": [267.529, 305.917, 0], + "to": [0.406, -2.013, 0], + "ti": [-2.229, 4.277, 0] + }, + { + "i": {"x": 0.833, "y": 0.946}, + "o": {"x": 0.167, "y": 0.039}, + "t": 4.8, + "s": [270.337, 296.143, 0], + "to": [2.229, -4.277, 0], + "ti": [-4.056, 5.365, 0] + }, + { + "i": {"x": 0.833, "y": 0.935}, + "o": {"x": 0.167, "y": 0.066}, + "t": 5.6, + "s": [280.902, 280.252, 0], + "to": [4.056, -5.365, 0], + "ti": [-4.394, 5.019, 0] + }, + { + "i": {"x": 0.833, "y": 0.931}, + "o": {"x": 0.167, "y": 0.081}, + "t": 6.4, + "s": [294.676, 263.955, 0], + "to": [4.394, -5.019, 0], + "ti": [-3.868, 4.214, 0] + }, + { + "i": {"x": 0.833, "y": 0.929}, + "o": {"x": 0.167, "y": 0.084}, + "t": 7.2, + "s": [307.264, 250.141, 0], + "to": [3.868, -4.214, 0], + "ti": [-3.257, 3.538, 0] + }, + { + "i": {"x": 0.833, "y": 0.929}, + "o": {"x": 0.167, "y": 0.083}, + "t": 8, + "s": [317.883, 238.67, 0], + "to": [3.257, -3.538, 0], + "ti": [-2.752, 3.047, 0] + }, + { + "i": {"x": 0.833, "y": 0.931}, + "o": {"x": 0.167, "y": 0.08}, + "t": 8.8, + "s": [326.809, 228.915, 0], + "to": [2.752, -3.047, 0], + "ti": [-2.349, 2.69, 0] + }, + { + "i": {"x": 0.833, "y": 0.933}, + "o": {"x": 0.167, "y": 0.075}, + "t": 9.6, + "s": [334.394, 220.39, 0], + "to": [2.349, -2.69, 0], + "ti": [-2.023, 2.427, 0] + }, + { + "i": {"x": 0.833, "y": 0.937}, + "o": {"x": 0.167, "y": 0.07}, + "t": 10.4, + "s": [340.902, 212.773, 0], + "to": [2.023, -2.427, 0], + "ti": [-1.753, 2.23, 0] + }, + { + "i": {"x": 0.833, "y": 0.942}, + "o": {"x": 0.167, "y": 0.064}, + "t": 11.2, + "s": [346.531, 205.826, 0], + "to": [1.753, -2.23, 0], + "ti": [-1.519, 2.072, 0] + }, + { + "i": {"x": 0.833, "y": 0.947}, + "o": {"x": 0.167, "y": 0.058}, + "t": 12, + "s": [351.417, 199.393, 0], + "to": [1.519, -2.072, 0], + "ti": [-1.306, 1.928, 0] + }, + { + "i": {"x": 0.833, "y": 0.953}, + "o": {"x": 0.167, "y": 0.052}, + "t": 12.8, + "s": [355.644, 193.397, 0], + "to": [1.306, -1.928, 0], + "ti": [-1.106, 1.797, 0] + }, + { + "i": {"x": 0.833, "y": 0.96}, + "o": {"x": 0.167, "y": 0.044}, + "t": 13.6, + "s": [359.255, 187.824, 0], + "to": [1.106, -1.797, 0], + "ti": [-0.913, 1.682, 0] + }, + { + "i": {"x": 0.833, "y": 0.968}, + "o": {"x": 0.167, "y": 0.035}, + "t": 14.4, + "s": [362.28, 182.616, 0], + "to": [0.913, -1.682, 0], + "ti": [-0.72, 1.579, 0] + }, + { + "i": {"x": 0.833, "y": 0.977}, + "o": {"x": 0.167, "y": 0.025}, + "t": 15.2, + "s": [364.731, 177.73, 0], + "to": [0.72, -1.579, 0], + "ti": [-0.524, 1.479, 0] + }, + { + "i": {"x": 0.833, "y": 0.987}, + "o": {"x": 0.167, "y": 0.014}, + "t": 16, + "s": [366.601, 173.143, 0], + "to": [0.524, -1.479, 0], + "ti": [-0.321, 1.378, 0] + }, + { + "i": {"x": 0.833, "y": 0.996}, + "o": {"x": 0.167, "y": 0.005}, + "t": 16.8, + "s": [367.872, 168.855, 0], + "to": [0.321, -1.378, 0], + "ti": [-0.115, 1.264, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 17.6, + "s": [368.526, 164.876, 0], + "to": [0.115, -1.264, 0], + "ti": [0.083, 1.13, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [368.561, 161.269, 0], + "to": [-0.083, -1.13, 0], + "ti": [0.254, 0.978, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [368.028, 158.096, 0], + "to": [-0.254, -0.978, 0], + "ti": [0.382, 0.82, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20, + "s": [367.038, 155.4, 0], + "to": [-0.382, -0.82, 0], + "ti": [0.464, 0.67, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [365.735, 153.176, 0], + "to": [-0.464, -0.67, 0], + "ti": [0.506, 0.539, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 21.6, + "s": [364.254, 151.378, 0], + "to": [-0.506, -0.539, 0], + "ti": [0.52, 0.43, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 22.4, + "s": [362.7, 149.94, 0], + "to": [-0.52, -0.43, 0], + "ti": [0.517, 0.343, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 23.2, + "s": [361.136, 148.795, 0], + "to": [-0.517, -0.343, 0], + "ti": [0.505, 0.273, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24, + "s": [359.597, 147.883, 0], + "to": [-0.505, -0.273, 0], + "ti": [0.487, 0.216, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24.8, + "s": [358.105, 147.16, 0], + "to": [-0.487, -0.216, 0], + "ti": [0.465, 0.169, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 25.6, + "s": [356.676, 146.589, 0], + "to": [-0.465, -0.169, 0], + "ti": [0.441, 0.132, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26.4, + "s": [355.317, 146.143, 0], + "to": [-0.441, -0.132, 0], + "ti": [0.415, 0.101, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 27.2, + "s": [354.033, 145.799, 0], + "to": [-0.415, -0.101, 0], + "ti": [0.388, 0.076, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28, + "s": [352.827, 145.538, 0], + "to": [-0.388, -0.076, 0], + "ti": [0.36, 0.056, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28.8, + "s": [351.704, 145.343, 0], + "to": [-0.36, -0.056, 0], + "ti": [0.33, 0.04, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 29.6, + "s": [350.668, 145.203, 0], + "to": [-0.33, -0.04, 0], + "ti": [0.298, 0.027, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 30.4, + "s": [349.724, 145.104, 0], + "to": [-0.298, -0.027, 0], + "ti": [0.263, 0.019, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 31.2, + "s": [348.882, 145.038, 0], + "to": [-0.263, -0.019, 0], + "ti": [0.227, 0.013, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32, + "s": [348.144, 144.993, 0], + "to": [-0.227, -0.013, 0], + "ti": [0.189, 0.011, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [347.517, 144.959, 0], + "to": [-0.189, -0.011, 0], + "ti": [0.146, 0.011, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [347.011, 144.929, 0], + "to": [-0.146, -0.011, 0], + "ti": [0.1, 0.014, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [346.639, 144.893, 0], + "to": [-0.1, -0.014, 0], + "ti": [0.056, 0.022, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 35.2, + "s": [346.413, 144.843, 0], + "to": [-0.056, -0.022, 0], + "ti": [0.03, 0.033, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36, + "s": [346.304, 144.761, 0], + "to": [-0.03, -0.033, 0], + "ti": [0.031, 0.038, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36.8, + "s": [346.234, 144.648, 0], + "to": [-0.031, -0.038, 0], + "ti": [0.045, 0.038, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 37.6, + "s": [346.12, 144.534, 0], + "to": [-0.045, -0.038, 0], + "ti": [0.059, 0.037, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 38.4, + "s": [345.962, 144.422, 0], + "to": [-0.059, -0.037, 0], + "ti": [0.072, 0.036, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 39.2, + "s": [345.764, 144.313, 0], + "to": [-0.072, -0.036, 0], + "ti": [0.083, 0.034, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40, + "s": [345.53, 144.207, 0], + "to": [-0.083, -0.034, 0], + "ti": [0.093, 0.033, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40.8, + "s": [345.264, 144.107, 0], + "to": [-0.093, -0.033, 0], + "ti": [0.102, 0.031, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 41.6, + "s": [344.97, 144.011, 0], + "to": [-0.102, -0.031, 0], + "ti": [0.11, 0.029, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 42.4, + "s": [344.65, 143.922, 0], + "to": [-0.11, -0.029, 0], + "ti": [0.117, 0.026, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 43.2, + "s": [344.308, 143.839, 0], + "to": [-0.117, -0.026, 0], + "ti": [0.123, 0.024, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44, + "s": [343.947, 143.764, 0], + "to": [-0.123, -0.024, 0], + "ti": [0.127, 0.022, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44.8, + "s": [343.572, 143.695, 0], + "to": [-0.127, -0.022, 0], + "ti": [0.13, 0.019, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 45.6, + "s": [343.185, 143.634, 0], + "to": [-0.13, -0.019, 0], + "ti": [0.133, 0.017, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 46.4, + "s": [342.79, 143.581, 0], + "to": [-0.133, -0.017, 0], + "ti": [0.067, 0.008, 0] + }, + {"t": 47.2001953125, "s": [342.389, 143.535, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.916, 0.916, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 3.2, + "s": [146.545, 56.981, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.984, 6.135, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [7.107, 6.414, 0]}, + "t": 4, + "s": [102.654, 113.791, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.082, 0.982, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.08, 0.082, 0]}, + "t": 4.8, + "s": [102.133, 114.538, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.769, 0.88, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.041, -0.024, 0]}, + "t": 5.6, + "s": [115.051, 67.711, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.979, 0.924, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.13, 0.272, 0]}, + "t": 6.4, + "s": [89.461, 104.174, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.843, 0.968, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.029, -0.825, 0]}, + "t": 7.2, + "s": [44.049, 120.312, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.068, 5.667, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.177, -0.052, 0]}, + "t": 8, + "s": [77.823, 118.832, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.009, 0.967, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.037, 0.082, 0]}, + "t": 8.8, + "s": [107.747, 119.743, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.92, 0.945, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.009, -0.054, 0]}, + "t": 9.6, + "s": [53.479, 67.782, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-1.06, 0.515, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-2.063, -0.16, 0]}, + "t": 10.4, + "s": [113.921, 99.393, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.981, 1.019, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.087, 0.101, 0]}, + "t": 11.2, + "s": [111.576, 88.565, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.95, 0.906, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.025, 0.015, 0]}, + "t": 12, + "s": [55.899, 36.375, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.094, 1.148, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.128, 0.737, 0]}, + "t": 12.8, + "s": [98.768, 100.4, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.97, 0.816, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.044, 0.053, 0]}, + "t": 13.6, + "s": [81.873, 108.568, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.853, 0.986, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.047, 0.153, 0]}, + "t": 14.4, + "s": [117.879, 85.877, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.034, 0.862, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.192, -0.017, 0]}, + "t": 15.2, + "s": [94.849, 58.578, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.781, 0.836, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.024, 0.211, 0]}, + "t": 16, + "s": [77.175, 81.139, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.98, 1.271, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.135, 0.169, 0]}, + "t": 16.8, + "s": [102.134, 95.906, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.835, 0.976, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.026, 0.064, 0]}, + "t": 17.6, + "s": [142.654, 110.218, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.797, 0.841, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.168, -0.034, 0]}, + "t": 18.4, + "s": [111.887, 49.352, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.009, 1.01, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.141, 0.175, 0]}, + "t": 19.2, + "s": [81.638, 92.763, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.947, 0.894, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.008, 0.009, 0]}, + "t": 20, + "s": [38.028, 132.048, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.012, 0.82, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.143, 0.392, 0]}, + "t": 20.8, + "s": [86.128, 88.194, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.088, 0.901, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.011, 0.155, 0]}, + "t": 21.6, + "s": [68.431, 76.37, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.042, 1.263, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.043, 0.518, 0]}, + "t": 22.4, + "s": [88.699, 62.632, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.935, 1.037, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.028, 0.063, 0]}, + "t": 23.2, + "s": [46.98, 59.998, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.851, 1.103, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.298, 0.026, 0]}, + "t": 24, + "s": [109.874, 70.958, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.881, 1.047, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.189, 0.046, 0]}, + "t": 24.8, + "s": [96.114, 55.137, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.231, 0.962, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.278, 0.03, 0]}, + "t": 25.6, + "s": [85.214, 90.54, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.189, 0.931, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.061, -0.071, 0]}, + "t": 26.4, + "s": [80.545, 35.132, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.94, 0.796, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.058, -0.412, 0]}, + "t": 27.2, + "s": [98.178, 65.031, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.966, 0.606, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.209, 0.141, 0]}, + "t": 28, + "s": [40.533, 60.003, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.938, 1.021, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.059, 0.106, 0]}, + "t": 28.8, + "s": [56.966, 52.732, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.747, 1.016, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.244, 0.016, 0]}, + "t": 29.6, + "s": [47.335, 25.638, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.818, 0.906, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.124, 0.014, 0]}, + "t": 30.4, + "s": [49.783, 59.415, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.061, 0.813, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.154, 0.718, 0]}, + "t": 31.2, + "s": [54.761, 18.968, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.894, 1.058, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.035, 0.15, 0]}, + "t": 32, + "s": [60.644, 13.657, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.945, 0.618, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.384, 0.034, 0]}, + "t": 32.8, + "s": [50.471, 7.064, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.973, 0.982, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.087, 0.107, 0]}, + "t": 33.6, + "s": [47.647, 18.253, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.927, 0.88, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.04, -0.023, 0]}, + "t": 34.4, + "s": [-15.426, 58.31, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.52, 0.892, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.604, 0.275, 0]}, + "t": 35.2, + "s": [27.159, 27.049, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.928, 0.901, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.072, 0.364, 0]}, + "t": 36, + "s": [21.997, 13.425, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.588, 1.135, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.54, 0.54, 0]}, + "t": 36.8, + "s": [59.347, 9.373, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.055, 1.742, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.104, 0.051, 0]}, + "t": 37.6, + "s": [54.352, 8.634, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.999, 0.829, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.033, 0.075, 0]}, + "t": 38.4, + "s": [34.643, 10.569, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.881, 0.973, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.001, 0.163, 0]}, + "t": 39.2, + "s": [67.47, -8.566, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.92, 0.842, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.276, -0.04, 0]}, + "t": 40, + "s": [34.991, -28.664, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [3.32, 0.639, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.801, 0.176, 0]}, + "t": 40.8, + "s": [20.908, -15.133, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.876, 0.894, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.08, 0.108, 0]}, + "t": 41.6, + "s": [21.531, -2.998, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.331, 0.787, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.256, 0.39, 0]}, + "t": 42.4, + "s": [3.556, 37.39, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.912, 0.945, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.067, 0.137, 0]}, + "t": 43.2, + "s": [-5.112, 48.357, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.837, 0.83, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.482, -0.165, 0]}, + "t": 44, + "s": [37.958, 65.386, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.163, 0.146, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.171, 0.163, 0]}, + "t": 44.8, + "s": [40.525, 59.682, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.082, 0.927, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.093, 0.092, 0]}, + "t": 45.6, + "s": [42.972, 53.735, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.041, -0.57, 0]}, + "t": 46.4, + "s": [65.106, -1.291, 100] + }, + {"t": 47.2001953125, "s": [21.097, 5.723, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "o": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "v": [ + [0.012, 10.621], + [-5.695, 5.34], + [-2.557, -7.377], + [3.15, -2.096] + ], + "c": true + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [1, 0.89411765337, 0.113725490868, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-3.421, 4.043], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Rectangle 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 3.2001953125, + "op": 48, + "st": 3.2001953125, + "bm": 0 + }, + { + "ddd": 0, + "ind": 21, + "ty": 4, + "nm": "Shape Layer 31", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 4, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 8, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 25.6, + "s": [100] + }, + {"t": 38.400390625, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 92, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 4, + "s": [274.616, 306.243, 0], + "to": [-0.115, -0.59, 0], + "ti": [0.824, 2.77, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 4.8, + "s": [273.925, 302.703, 0], + "to": [-0.824, -2.77, 0], + "ti": [2.181, 6.093, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 5.6, + "s": [269.674, 289.624, 0], + "to": [-2.181, -6.093, 0], + "ti": [3.267, 8.196, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 6.4, + "s": [260.838, 266.142, 0], + "to": [-3.267, -8.196, 0], + "ti": [3.485, 7.964, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 7.2, + "s": [250.074, 240.449, 0], + "to": [-3.485, -7.964, 0], + "ti": [3.198, 6.707, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8, + "s": [239.929, 218.357, 0], + "to": [-3.198, -6.707, 0], + "ti": [2.853, 5.529, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [230.887, 200.209, 0], + "to": [-2.853, -5.529, 0], + "ti": [2.563, 4.612, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [222.813, 185.182, 0], + "to": [-2.563, -4.612, 0], + "ti": [2.332, 3.906, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 10.4, + "s": [215.51, 172.535, 0], + "to": [-2.332, -3.906, 0], + "ti": [2.146, 3.349, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 11.2, + "s": [208.822, 161.746, 0], + "to": [-2.146, -3.349, 0], + "ti": [1.992, 2.898, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12, + "s": [202.636, 152.442, 0], + "to": [-1.992, -2.898, 0], + "ti": [1.863, 2.525, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12.8, + "s": [196.868, 144.357, 0], + "to": [-1.863, -2.525, 0], + "ti": [1.751, 2.21, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 13.6, + "s": [191.458, 137.291, 0], + "to": [-1.751, -2.21, 0], + "ti": [1.653, 1.941, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 14.4, + "s": [186.36, 131.094, 0], + "to": [-1.653, -1.941, 0], + "ti": [1.563, 1.706, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 15.2, + "s": [181.542, 125.648, 0], + "to": [-1.563, -1.706, 0], + "ti": [1.481, 1.501, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16, + "s": [176.98, 120.856, 0], + "to": [-1.481, -1.501, 0], + "ti": [1.403, 1.32, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16.8, + "s": [172.656, 116.64, 0], + "to": [-1.403, -1.32, 0], + "ti": [1.328, 1.158, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 17.6, + "s": [168.561, 112.936, 0], + "to": [-1.328, -1.158, 0], + "ti": [1.255, 1.014, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [164.687, 109.689, 0], + "to": [-1.255, -1.014, 0], + "ti": [1.183, 0.886, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [161.03, 106.849, 0], + "to": [-1.183, -0.886, 0], + "ti": [1.111, 0.771, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20, + "s": [157.59, 104.374, 0], + "to": [-1.111, -0.771, 0], + "ti": [1.038, 0.668, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [154.367, 102.223, 0], + "to": [-1.038, -0.668, 0], + "ti": [0.964, 0.577, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 21.6, + "s": [151.363, 100.364, 0], + "to": [-0.964, -0.577, 0], + "ti": [0.888, 0.495, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 22.4, + "s": [148.583, 98.763, 0], + "to": [-0.888, -0.495, 0], + "ti": [0.81, 0.422, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 23.2, + "s": [146.035, 97.394, 0], + "to": [-0.81, -0.422, 0], + "ti": [0.741, 0.358, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24, + "s": [143.723, 96.23, 0], + "to": [-0.741, -0.358, 0], + "ti": [0.687, 0.303, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24.8, + "s": [141.59, 95.244, 0], + "to": [-0.687, -0.303, 0], + "ti": [0.639, 0.255, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 25.6, + "s": [139.604, 94.413, 0], + "to": [-0.639, -0.255, 0], + "ti": [0.592, 0.214, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26.4, + "s": [137.759, 93.715, 0], + "to": [-0.592, -0.214, 0], + "ti": [0.547, 0.179, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 27.2, + "s": [136.052, 93.13, 0], + "to": [-0.547, -0.179, 0], + "ti": [0.502, 0.149, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28, + "s": [134.48, 92.643, 0], + "to": [-0.502, -0.149, 0], + "ti": [0.46, 0.124, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28.8, + "s": [133.038, 92.238, 0], + "to": [-0.46, -0.124, 0], + "ti": [0.418, 0.103, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 29.6, + "s": [131.723, 91.901, 0], + "to": [-0.418, -0.103, 0], + "ti": [0.378, 0.085, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 30.4, + "s": [130.53, 91.622, 0], + "to": [-0.378, -0.085, 0], + "ti": [0.339, 0.071, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 31.2, + "s": [129.457, 91.39, 0], + "to": [-0.339, -0.071, 0], + "ti": [0.301, 0.059, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32, + "s": [128.499, 91.197, 0], + "to": [-0.301, -0.059, 0], + "ti": [0.264, 0.049, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [127.654, 91.037, 0], + "to": [-0.264, -0.049, 0], + "ti": [0.228, 0.041, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [126.917, 90.903, 0], + "to": [-0.228, -0.041, 0], + "ti": [0.193, 0.034, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [126.287, 90.791, 0], + "to": [-0.193, -0.034, 0], + "ti": [0.158, 0.028, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 35.2, + "s": [125.761, 90.698, 0], + "to": [-0.158, -0.028, 0], + "ti": [0.134, 0.025, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36, + "s": [125.337, 90.622, 0], + "to": [-0.134, -0.025, 0], + "ti": [0.126, 0.027, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36.8, + "s": [124.96, 90.547, 0], + "to": [-0.126, -0.027, 0], + "ti": [0.127, 0.03, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 37.6, + "s": [124.579, 90.461, 0], + "to": [-0.127, -0.03, 0], + "ti": [0.127, 0.034, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 38.4, + "s": [124.196, 90.364, 0], + "to": [-0.127, -0.034, 0], + "ti": [0.126, 0.037, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 39.2, + "s": [123.816, 90.257, 0], + "to": [-0.126, -0.037, 0], + "ti": [0.124, 0.04, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40, + "s": [123.44, 90.141, 0], + "to": [-0.124, -0.04, 0], + "ti": [0.121, 0.042, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40.8, + "s": [123.073, 90.017, 0], + "to": [-0.121, -0.042, 0], + "ti": [0.116, 0.044, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 41.6, + "s": [122.717, 89.887, 0], + "to": [-0.116, -0.044, 0], + "ti": [0.11, 0.046, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 42.4, + "s": [122.376, 89.751, 0], + "to": [-0.11, -0.046, 0], + "ti": [0.103, 0.046, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 43.2, + "s": [122.055, 89.613, 0], + "to": [-0.103, -0.046, 0], + "ti": [0.095, 0.046, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44, + "s": [121.755, 89.474, 0], + "to": [-0.095, -0.046, 0], + "ti": [0.086, 0.045, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44.8, + "s": [121.483, 89.337, 0], + "to": [-0.086, -0.045, 0], + "ti": [0.075, 0.043, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 45.6, + "s": [121.241, 89.204, 0], + "to": [-0.075, -0.043, 0], + "ti": [0.062, 0.041, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 46.4, + "s": [121.035, 89.077, 0], + "to": [-0.062, -0.041, 0], + "ti": [0.028, 0.019, 0] + }, + {"t": 47.2001953125, "s": [120.867, 88.96, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.272, 0.954, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 4, + "s": [88.213, 98.042, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.933, 0.787, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.064, -0.101, 0]}, + "t": 4.8, + "s": [98.671, 49.922, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.952, 0.883, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.333, 0.137, 0]}, + "t": 5.6, + "s": [54.098, 71.655, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.856, 1.001, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.111, 0.287, 0]}, + "t": 6.4, + "s": [63.017, 105.433, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.962, 0.719, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.076, 0.001, 0]}, + "t": 7.2, + "s": [59.185, 119.254, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.999, 1.027, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.071, 0.118, 0]}, + "t": 8, + "s": [102.36, 105.209, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.903, 0.921, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.001, 0.02, 0]}, + "t": 8.8, + "s": [79.066, 71.811, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.894, -1.797, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.58, -1.654, 0]}, + "t": 9.6, + "s": [101.985, 115.908, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.972, 0.937, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.076, 0.086, 0]}, + "t": 10.4, + "s": [105.84, 113.791, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.033, 0.698, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.042, -0.255, 0]}, + "t": 11.2, + "s": [60.688, 44.915, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.04, 0.92, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.024, 0.115, 0]}, + "t": 12, + "s": [90.735, 61.894, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.924, 0.271, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.027, -2.022, 0]}, + "t": 12.8, + "s": [48.636, 106.533, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.029, 0.986, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.868, 0.094, 0]}, + "t": 13.6, + "s": [110.804, 104.766, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.309, 0.797, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.022, -0.018, 0]}, + "t": 14.4, + "s": [105.35, 91.067, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.026, 0.865, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.066, 0.141, 0]}, + "t": 15.2, + "s": [112.726, 102.388, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.929, 1.297, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.02, 0.217, 0]}, + "t": 16, + "s": [78.021, 118.647, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.73, 0.94, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.493, 0.065, 0]}, + "t": 16.8, + "s": [123.499, 128.748, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.684, 0.681, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.12, -0.217, 0]}, + "t": 17.6, + "s": [116.924, 82.593, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.991, 1.037, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.113, 0.113, 0]}, + "t": 18.4, + "s": [102.179, 95.418, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.886, 0.872, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.01, 0.026, 0]}, + "t": 19.2, + "s": [61.093, 131.691, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.995, 1.018, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.309, 0.239, 0]}, + "t": 20, + "s": [97.755, 79.275, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.561, 0.959, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.006, 0.015, 0]}, + "t": 20.8, + "s": [111.269, 51.174, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.977, 0.909, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.103, -0.081, 0]}, + "t": 21.6, + "s": [98.597, 85.374, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.896, 0.259, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.031, 0.937, 0]}, + "t": 22.4, + "s": [44.555, 68.006, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.03, 1.073, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.425, 0.094, 0]}, + "t": 23.2, + "s": [83.792, 66.311, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.079, 1.021, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.022, 0.039, 0]}, + "t": 24, + "s": [93.366, 52.935, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.872, 0.97, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.041, 0.017, 0]}, + "t": 24.8, + "s": [80.351, 77.978, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.459, 0.91, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.24, -0.047, 0]}, + "t": 25.6, + "s": [105.736, 46.617, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.918, 1.164, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.071, 1.147, 0]}, + "t": 26.4, + "s": [119.231, 66.597, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.338, 0.408, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-4.838, 0.055, 0]}, + "t": 27.2, + "s": [31.333, 68.163, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.923, 0.942, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.089, 0.097, 0]}, + "t": 28, + "s": [32.821, 63.516, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.316, 1.245, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.049, -0.192, 0]}, + "t": 28.8, + "s": [55.229, 35.157, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.082, 0.955, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.095, 0.062, 0]}, + "t": 29.6, + "s": [53.579, 43.75, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.008, 0.863, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.041, -0.1, 0]}, + "t": 30.4, + "s": [41.681, 9.938, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.021, 1.024, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.008, 0.213, 0]}, + "t": 31.2, + "s": [65.338, 25.314, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.135, 1.097, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.017, 0.019, 0]}, + "t": 32, + "s": [39.293, 35.228, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.942, 0.902, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.052, 0.045, 0]}, + "t": 32.8, + "s": [71.909, 22.453, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.84, 1.747, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.192, 0.563, 0]}, + "t": 33.6, + "s": [-13.722, 50.113, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.78, 0.885, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.174, 0.075, 0]}, + "t": 34.4, + "s": [12.165, 54.928, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.932, 1.049, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.134, 0.304, 0]}, + "t": 35.2, + "s": [36.047, 7.012, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.981, 0.875, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.369, 0.031, 0]}, + "t": 36, + "s": [75.273, -11.082, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.976, 1.192, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.024, 0.248, 0]}, + "t": 36.8, + "s": [68.05, 17.747, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.141, 0.902, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.033, 0.058, 0]}, + "t": 37.6, + "s": [73.648, 32.314, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.915, 0.932, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.092, 0.553, 0]}, + "t": 38.4, + "s": [69.641, -15.771, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.919, -0.285, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [4.377, -0.361, 0]}, + "t": 39.2, + "s": [32.387, -24.312, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [216.612, 0.822, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-3.239, 0.089, 0]}, + "t": 40, + "s": [31.664, -22.708, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.938, 0.876, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.083, 0.156, 0]}, + "t": 40.8, + "s": [31.682, 0.419, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.616, 0.585, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.235, 0.252, 0]}, + "t": 41.6, + "s": [-15.245, 26.807, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.903, 0.986, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.106, 0.104, 0]}, + "t": 42.4, + "s": [-2.957, 39.841, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.946, 0.871, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.581, -0.016, 0]}, + "t": 43.2, + "s": [41.396, 91.664, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.754, 0.858, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.15, 0.236, 0]}, + "t": 44, + "s": [48.828, 48.327, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.071, 0.928, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.075, 0.203, 0]}, + "t": 44.8, + "s": [46.178, 24.721, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.871, 0.407, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.038, -0.525, 0]}, + "t": 45.6, + "s": [72.828, 8.231, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.235, 0.097, 0]}, + "t": 46.4, + "s": [23.424, 10.493, 100] + }, + {"t": 47.2001953125, "s": [-3.769, 24.296, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "o": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "v": [ + [0.012, 10.621], + [-5.695, 5.34], + [-2.557, -7.377], + [3.15, -2.096] + ], + "c": true + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [0.313725501299, 0.890196084976, 0.760784327984, 1], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-3.421, 4.043], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Rectangle 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 4, + "op": 48, + "st": 4, + "bm": 0 + }, + { + "ddd": 0, + "ind": 22, + "ty": 4, + "nm": "Shape Layer 30", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 6.4, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 10.4, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 28, + "s": [100] + }, + {"t": 40.7998046875, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 92, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 6.4, + "s": [273.484, 300.616, 0], + "to": [-0.073, -0.268, 0], + "ti": [0.394, 1.23, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 7.2, + "s": [273.044, 299.005, 0], + "to": [-0.394, -1.23, 0], + "ti": [0.97, 2.68, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8, + "s": [271.118, 293.234, 0], + "to": [-0.97, -2.68, 0], + "ti": [1.519, 3.557, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [267.222, 282.925, 0], + "to": [-1.519, -3.557, 0], + "ti": [1.983, 3.196, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [262.002, 271.894, 0], + "to": [-1.983, -3.196, 0], + "ti": [2.392, 1.007, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 10.4, + "s": [255.326, 263.748, 0], + "to": [-2.392, -1.007, 0], + "ti": [1.906, -1.439, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 11.2, + "s": [247.647, 265.854, 0], + "to": [-1.906, 1.439, 0], + "ti": [1.029, -2.094, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12, + "s": [243.888, 272.381, 0], + "to": [-1.029, 2.094, 0], + "ti": [0.709, -1.9, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12.8, + "s": [241.473, 278.416, 0], + "to": [-0.709, 1.9, 0], + "ti": [0.56, -1.691, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 13.6, + "s": [239.636, 283.781, 0], + "to": [-0.56, 1.691, 0], + "ti": [0.476, -1.51, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 14.4, + "s": [238.111, 288.564, 0], + "to": [-0.476, 1.51, 0], + "ti": [0.423, -1.353, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 15.2, + "s": [236.781, 292.841, 0], + "to": [-0.423, 1.353, 0], + "ti": [0.389, -1.218, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16, + "s": [235.575, 296.684, 0], + "to": [-0.389, 1.218, 0], + "ti": [0.367, -1.099, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16.8, + "s": [234.45, 300.149, 0], + "to": [-0.367, 1.099, 0], + "ti": [0.353, -0.992, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 17.6, + "s": [233.375, 303.275, 0], + "to": [-0.353, 0.992, 0], + "ti": [0.346, -0.895, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [232.33, 306.098, 0], + "to": [-0.346, 0.895, 0], + "ti": [0.345, -0.807, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [231.297, 308.646, 0], + "to": [-0.345, 0.807, 0], + "ti": [0.347, -0.725, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20, + "s": [230.261, 310.941, 0], + "to": [-0.347, 0.725, 0], + "ti": [0.353, -0.648, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [229.214, 312.998, 0], + "to": [-0.353, 0.648, 0], + "ti": [0.361, -0.575, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 21.6, + "s": [228.146, 314.83, 0], + "to": [-0.361, 0.575, 0], + "ti": [0.371, -0.504, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 22.4, + "s": [227.049, 316.449, 0], + "to": [-0.371, 0.504, 0], + "ti": [0.381, -0.434, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 23.2, + "s": [225.922, 317.856, 0], + "to": [-0.381, 0.434, 0], + "ti": [0.391, -0.366, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24, + "s": [224.764, 319.055, 0], + "to": [-0.391, 0.366, 0], + "ti": [0.401, -0.298, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24.8, + "s": [223.576, 320.049, 0], + "to": [-0.401, 0.298, 0], + "ti": [0.41, -0.232, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 25.6, + "s": [222.359, 320.843, 0], + "to": [-0.41, 0.232, 0], + "ti": [0.415, -0.168, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26.4, + "s": [221.118, 321.443, 0], + "to": [-0.415, 0.168, 0], + "ti": [0.412, -0.106, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 27.2, + "s": [219.872, 321.85, 0], + "to": [-0.412, 0.106, 0], + "ti": [0.401, -0.05, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28, + "s": [218.647, 322.076, 0], + "to": [-0.401, 0.05, 0], + "ti": [0.385, -0.003, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28.8, + "s": [217.463, 322.147, 0], + "to": [-0.385, 0.003, 0], + "ti": [0.364, 0.034, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 29.6, + "s": [216.337, 322.093, 0], + "to": [-0.364, -0.034, 0], + "ti": [0.341, 0.06, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 30.4, + "s": [215.276, 321.946, 0], + "to": [-0.341, -0.06, 0], + "ti": [0.316, 0.077, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 31.2, + "s": [214.288, 321.735, 0], + "to": [-0.316, -0.077, 0], + "ti": [0.29, 0.086, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32, + "s": [213.378, 321.486, 0], + "to": [-0.29, -0.086, 0], + "ti": [0.265, 0.09, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [212.546, 321.219, 0], + "to": [-0.265, -0.09, 0], + "ti": [0.239, 0.088, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [211.79, 320.949, 0], + "to": [-0.239, -0.088, 0], + "ti": [0.212, 0.083, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [211.114, 320.689, 0], + "to": [-0.212, -0.083, 0], + "ti": [0.186, 0.075, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 35.2, + "s": [210.521, 320.45, 0], + "to": [-0.186, -0.075, 0], + "ti": [0.176, 0.067, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36, + "s": [209.997, 320.238, 0], + "to": [-0.176, -0.067, 0], + "ti": [0.178, 0.059, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36.8, + "s": [209.465, 320.047, 0], + "to": [-0.178, -0.059, 0], + "ti": [0.179, 0.05, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 37.6, + "s": [208.927, 319.881, 0], + "to": [-0.179, -0.05, 0], + "ti": [0.179, 0.042, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 38.4, + "s": [208.392, 319.745, 0], + "to": [-0.179, -0.042, 0], + "ti": [0.184, 0.036, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 39.2, + "s": [207.85, 319.63, 0], + "to": [-0.184, -0.036, 0], + "ti": [0.189, 0.031, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40, + "s": [207.287, 319.528, 0], + "to": [-0.189, -0.031, 0], + "ti": [0.191, 0.026, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40.8, + "s": [206.714, 319.442, 0], + "to": [-0.191, -0.026, 0], + "ti": [0.19, 0.019, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 41.6, + "s": [206.14, 319.374, 0], + "to": [-0.19, -0.019, 0], + "ti": [0.186, 0.013, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 42.4, + "s": [205.574, 319.326, 0], + "to": [-0.186, -0.013, 0], + "ti": [0.18, 0.006, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 43.2, + "s": [205.024, 319.298, 0], + "to": [-0.18, -0.006, 0], + "ti": [0.171, -0.002, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44, + "s": [204.495, 319.292, 0], + "to": [-0.171, 0.002, 0], + "ti": [0.161, -0.009, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44.8, + "s": [203.995, 319.308, 0], + "to": [-0.161, 0.009, 0], + "ti": [0.149, -0.017, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 45.6, + "s": [203.528, 319.347, 0], + "to": [-0.149, 0.017, 0], + "ti": [0.136, -0.024, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 46.4, + "s": [203.099, 319.409, 0], + "to": [-0.136, 0.024, 0], + "ti": [0.065, -0.014, 0] + }, + {"t": 47.2001953125, "s": [202.712, 319.493, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.949, 1.131, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 6.4, + "s": [62.161, 96.543, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.907, 0.999, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.13, 0.051, 0]}, + "t": 7.2, + "s": [100.156, 112.306, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.255, 0.94, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.78, -0.001, 0]}, + "t": 8, + "s": [85.337, 71.714, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.914, 0.737, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.089, -0.212, 0]}, + "t": 8.8, + "s": [83.564, 111.805, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [3.319, 0.894, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [2.884, 0.122, 0]}, + "t": 9.6, + "s": [58.626, 100.499, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.968, 0.759, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.08, 0.397, 0]}, + "t": 10.4, + "s": [57.883, 76.161, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.128, 1.176, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.051, 0.127, 0]}, + "t": 11.2, + "s": [79.277, 69.687, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.956, 0.877, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.051, 0.057, 0]}, + "t": 12, + "s": [66.041, 57.442, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.189, 0.928, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.092, 0.26, 0]}, + "t": 12.8, + "s": [99.685, 95.603, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.016, 1.082, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.058, -0.51, 0]}, + "t": 13.6, + "s": [83.661, 113.563, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.924, 1.121, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.013, 0.041, 0]}, + "t": 14.4, + "s": [136.015, 111.04, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.746, 0.893, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.873, 0.049, 0]}, + "t": 15.2, + "s": [73.781, 116.06, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.967, 0.529, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.124, 0.375, 0]}, + "t": 16, + "s": [79.202, 103.731, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.027, 1.092, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.055, 0.101, 0]}, + "t": 16.8, + "s": [90.283, 100.207, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.852, 0.985, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.02, 0.044, 0]}, + "t": 17.6, + "s": [83.612, 83.82, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.603, 0.729, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.191, -0.018, 0]}, + "t": 18.4, + "s": [92.451, 118.313, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.909, 0.999, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.106, 0.12, 0]}, + "t": 19.2, + "s": [99.265, 89.881, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [3.48, 0.93, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.02, -0.001, 0]}, + "t": 20, + "s": [124.872, 26, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.92, 0.628, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.081, -0.442, 0]}, + "t": 20.8, + "s": [127.15, 89.446, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.841, 0.938, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-2.334, 0.107, 0]}, + "t": 21.6, + "s": [57.069, 79.381, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.572, 0.791, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.175, -0.245, 0]}, + "t": 22.4, + "s": [59.486, 44.49, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.638, 0.895, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.103, 0.139, 0]}, + "t": 23.2, + "s": [61.689, 53.354, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.822, 1.105, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.108, 0.401, 0]}, + "t": 24, + "s": [70.8, 66.698, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.094, 0.926, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.157, 0.047, 0]}, + "t": 24.8, + "s": [101.268, 70.196, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.89, -1.506, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.044, -0.65, 0]}, + "t": 25.6, + "s": [135.914, 62.272, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.08, 0.944, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.345, 0.086, 0]}, + "t": 26.4, + "s": [62.097, 63.174, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.94, 0.915, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.041, -0.167, 0]}, + "t": 27.2, + "s": [38.578, 89.373, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.898, -33.797, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.213, 5.099, 0]}, + "t": 28, + "s": [84.734, 80.668, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.645, 0.976, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.457, 0.084, 0]}, + "t": 28.8, + "s": [71.735, 80.523, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.967, 0.902, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.074, -0.034, 0]}, + "t": 29.6, + "s": [68.832, 20.271, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.963, 1.005, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.053, 0.563, 0]}, + "t": 30.4, + "s": [94.213, 63.191, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.499, 0.724, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.065, 0.004, 0]}, + "t": 31.2, + "s": [78.745, 70.653, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.912, 1.012, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.071, 0.119, 0]}, + "t": 32, + "s": [87.422, 62.786, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.903, 0.984, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.658, 0.011, 0]}, + "t": 32.8, + "s": [26.733, 44.597, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [8.962, 0.747, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.61, -0.019, 0]}, + "t": 33.6, + "s": [23.521, 65.429, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.931, 0.997, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.082, 0.124, 0]}, + "t": 34.4, + "s": [23.011, 48.501, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.153, 0.822, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.407, -0.003, 0]}, + "t": 35.2, + "s": [72.162, 14.125, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.994, 1.075, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.054, 0.156, 0]}, + "t": 36, + "s": [63.801, 47.128, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.742, 0.92, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.006, 0.039, 0]}, + "t": 36.8, + "s": [87.498, 84.73, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.929, 1.295, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.123, -1.926, 0]}, + "t": 37.6, + "s": [65.378, 13.453, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.536, 1.079, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.497, 0.065, 0]}, + "t": 38.4, + "s": [19.027, 16.413, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.076, 0.957, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.102, 0.041, 0]}, + "t": 39.2, + "s": [25.686, 2.971, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.924, 0.87, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.04, -0.09, 0]}, + "t": 40, + "s": [56.116, 29.236, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.444, 1.634, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.906, 0.231, 0]}, + "t": 40.8, + "s": [-1.889, 16.583, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.986, 0.961, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.098, 0.074, 0]}, + "t": 41.6, + "s": [2.996, 9.45, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.952, 0.802, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.017, -0.074, 0]}, + "t": 42.4, + "s": [30.717, 70.822, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.484, 0.967, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.111, 0.144, 0]}, + "t": 43.2, + "s": [7.584, 38.216, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.947, 0.944, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.099, -0.054, 0]}, + "t": 44, + "s": [17.496, -6.813, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.773, 1.079, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.143, -0.17, 0]}, + "t": 44.8, + "s": [68.936, 20.442, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.98, 0.725, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.132, 0.041, 0]}, + "t": 45.6, + "s": [50.024, 11.466, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.027, 0.12, 0]}, + "t": 46.4, + "s": [17.481, 29.004, 100] + }, + {"t": 47.2001953125, "s": [42.14, 69.391, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "o": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "v": [ + [0.012, 10.621], + [-5.695, 5.34], + [-2.557, -7.377], + [3.15, -2.096] + ], + "c": true + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [1, 0.89411765337, 0.113725490868, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-3.421, 4.043], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Rectangle 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 6.400390625, + "op": 48, + "st": 6.400390625, + "bm": 0 + }, + { + "ddd": 0, + "ind": 23, + "ty": 4, + "nm": "Shape Layer 29", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 9.6, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 13.6, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 31.2, + "s": [100] + }, + {"t": 44, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 92, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [270.833, 305.959, 0], + "to": [-0.088, -0.333, 0], + "ti": [0.479, 1.681, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 10.4, + "s": [270.305, 303.959, 0], + "to": [-0.479, -1.681, 0], + "ti": [0.843, 3.89, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 11.2, + "s": [267.957, 295.871, 0], + "to": [-0.843, -3.89, 0], + "ti": [-1.367, 3.831, 0] + }, + { + "i": {"x": 0.833, "y": 0.894}, + "o": {"x": 0.167, "y": 0.108}, + "t": 12, + "s": [265.25, 280.619, 0], + "to": [1.367, -3.831, 0], + "ti": [-4.031, 0.131, 0] + }, + { + "i": {"x": 0.833, "y": 0.884}, + "o": {"x": 0.167, "y": 0.122}, + "t": 12.8, + "s": [276.159, 272.888, 0], + "to": [4.031, -0.131, 0], + "ti": [-3.947, -2.293, 0] + }, + { + "i": {"x": 0.833, "y": 0.893}, + "o": {"x": 0.167, "y": 0.13}, + "t": 13.6, + "s": [289.438, 279.833, 0], + "to": [3.947, 2.293, 0], + "ti": [-3.163, -2.107, 0] + }, + { + "i": {"x": 0.833, "y": 0.895}, + "o": {"x": 0.167, "y": 0.125}, + "t": 14.4, + "s": [299.839, 286.644, 0], + "to": [3.163, 2.107, 0], + "ti": [-2.643, -1.789, 0] + }, + { + "i": {"x": 0.833, "y": 0.893}, + "o": {"x": 0.167, "y": 0.125}, + "t": 15.2, + "s": [308.416, 292.475, 0], + "to": [2.643, 1.789, 0], + "ti": [-2.265, -1.502, 0] + }, + { + "i": {"x": 0.833, "y": 0.89}, + "o": {"x": 0.167, "y": 0.127}, + "t": 16, + "s": [315.699, 297.38, 0], + "to": [2.265, 1.502, 0], + "ti": [-1.975, -1.258, 0] + }, + { + "i": {"x": 0.833, "y": 0.887}, + "o": {"x": 0.167, "y": 0.129}, + "t": 16.8, + "s": [322.005, 301.489, 0], + "to": [1.975, 1.258, 0], + "ti": [-1.746, -1.051, 0] + }, + { + "i": {"x": 0.833, "y": 0.882}, + "o": {"x": 0.167, "y": 0.134}, + "t": 17.6, + "s": [327.55, 304.928, 0], + "to": [1.746, 1.051, 0], + "ti": [-1.558, -0.872, 0] + }, + { + "i": {"x": 0.833, "y": 0.878}, + "o": {"x": 0.167, "y": 0.138}, + "t": 18.4, + "s": [332.48, 307.794, 0], + "to": [1.558, 0.872, 0], + "ti": [-1.4, -0.715, 0] + }, + { + "i": {"x": 0.833, "y": 0.873}, + "o": {"x": 0.167, "y": 0.144}, + "t": 19.2, + "s": [336.899, 310.159, 0], + "to": [1.4, 0.715, 0], + "ti": [-1.265, -0.574, 0] + }, + { + "i": {"x": 0.833, "y": 0.866}, + "o": {"x": 0.167, "y": 0.15}, + "t": 20, + "s": [340.882, 312.081, 0], + "to": [1.265, 0.574, 0], + "ti": [-1.148, -0.448, 0] + }, + { + "i": {"x": 0.833, "y": 0.86}, + "o": {"x": 0.167, "y": 0.157}, + "t": 20.8, + "s": [344.489, 313.605, 0], + "to": [1.148, 0.448, 0], + "ti": [-1.045, -0.333, 0] + }, + { + "i": {"x": 0.833, "y": 0.853}, + "o": {"x": 0.167, "y": 0.164}, + "t": 21.6, + "s": [347.771, 314.769, 0], + "to": [1.045, 0.333, 0], + "ti": [-0.954, -0.228, 0] + }, + { + "i": {"x": 0.833, "y": 0.848}, + "o": {"x": 0.167, "y": 0.17}, + "t": 22.4, + "s": [350.762, 315.603, 0], + "to": [0.954, 0.228, 0], + "ti": [-0.867, -0.129, 0] + }, + { + "i": {"x": 0.833, "y": 0.845}, + "o": {"x": 0.167, "y": 0.175}, + "t": 23.2, + "s": [353.494, 316.134, 0], + "to": [0.867, 0.129, 0], + "ti": [-0.779, -0.034, 0] + }, + { + "i": {"x": 0.833, "y": 0.842}, + "o": {"x": 0.167, "y": 0.177}, + "t": 24, + "s": [355.966, 316.376, 0], + "to": [0.779, 0.034, 0], + "ti": [-0.692, 0.054, 0] + }, + { + "i": {"x": 0.833, "y": 0.846}, + "o": {"x": 0.167, "y": 0.173}, + "t": 24.8, + "s": [358.169, 316.339, 0], + "to": [0.692, -0.054, 0], + "ti": [-0.607, 0.132, 0] + }, + { + "i": {"x": 0.833, "y": 0.854}, + "o": {"x": 0.167, "y": 0.162}, + "t": 25.6, + "s": [360.118, 316.051, 0], + "to": [0.607, -0.132, 0], + "ti": [-0.525, 0.197, 0] + }, + { + "i": {"x": 0.833, "y": 0.869}, + "o": {"x": 0.167, "y": 0.143}, + "t": 26.4, + "s": [361.814, 315.546, 0], + "to": [0.525, -0.197, 0], + "ti": [-0.446, 0.247, 0] + }, + { + "i": {"x": 0.833, "y": 0.888}, + "o": {"x": 0.167, "y": 0.121}, + "t": 27.2, + "s": [363.265, 314.868, 0], + "to": [0.446, -0.247, 0], + "ti": [-0.374, 0.281, 0] + }, + { + "i": {"x": 0.833, "y": 0.909}, + "o": {"x": 0.167, "y": 0.099}, + "t": 28, + "s": [364.49, 314.065, 0], + "to": [0.374, -0.281, 0], + "ti": [-0.309, 0.299, 0] + }, + { + "i": {"x": 0.833, "y": 0.927}, + "o": {"x": 0.167, "y": 0.079}, + "t": 28.8, + "s": [365.508, 313.183, 0], + "to": [0.309, -0.299, 0], + "ti": [-0.254, 0.304, 0] + }, + { + "i": {"x": 0.833, "y": 0.942}, + "o": {"x": 0.167, "y": 0.062}, + "t": 29.6, + "s": [366.345, 312.269, 0], + "to": [0.254, -0.304, 0], + "ti": [-0.208, 0.299, 0] + }, + { + "i": {"x": 0.833, "y": 0.954}, + "o": {"x": 0.167, "y": 0.051}, + "t": 30.4, + "s": [367.029, 311.356, 0], + "to": [0.208, -0.299, 0], + "ti": [-0.171, 0.285, 0] + }, + { + "i": {"x": 0.833, "y": 0.962}, + "o": {"x": 0.167, "y": 0.042}, + "t": 31.2, + "s": [367.591, 310.475, 0], + "to": [0.171, -0.285, 0], + "ti": [-0.143, 0.266, 0] + }, + { + "i": {"x": 0.833, "y": 0.967}, + "o": {"x": 0.167, "y": 0.037}, + "t": 32, + "s": [368.057, 309.644, 0], + "to": [0.143, -0.266, 0], + "ti": [-0.123, 0.244, 0] + }, + { + "i": {"x": 0.833, "y": 0.97}, + "o": {"x": 0.167, "y": 0.034}, + "t": 32.8, + "s": [368.451, 308.877, 0], + "to": [0.123, -0.244, 0], + "ti": [-0.108, 0.219, 0] + }, + { + "i": {"x": 0.833, "y": 0.97}, + "o": {"x": 0.167, "y": 0.034}, + "t": 33.6, + "s": [368.793, 308.182, 0], + "to": [0.108, -0.219, 0], + "ti": [-0.097, 0.192, 0] + }, + { + "i": {"x": 0.833, "y": 0.967}, + "o": {"x": 0.167, "y": 0.038}, + "t": 34.4, + "s": [369.097, 307.564, 0], + "to": [0.097, -0.192, 0], + "ti": [-0.091, 0.166, 0] + }, + { + "i": {"x": 0.833, "y": 0.961}, + "o": {"x": 0.167, "y": 0.045}, + "t": 35.2, + "s": [369.377, 307.027, 0], + "to": [0.091, -0.166, 0], + "ti": [-0.087, 0.139, 0] + }, + { + "i": {"x": 0.833, "y": 0.951}, + "o": {"x": 0.167, "y": 0.057}, + "t": 36, + "s": [369.642, 306.571, 0], + "to": [0.087, -0.139, 0], + "ti": [-0.085, 0.112, 0] + }, + { + "i": {"x": 0.833, "y": 0.936}, + "o": {"x": 0.167, "y": 0.075}, + "t": 36.8, + "s": [369.899, 306.194, 0], + "to": [0.085, -0.112, 0], + "ti": [-0.083, 0.087, 0] + }, + { + "i": {"x": 0.833, "y": 0.914}, + "o": {"x": 0.167, "y": 0.101}, + "t": 37.6, + "s": [370.15, 305.896, 0], + "to": [0.083, -0.087, 0], + "ti": [-0.082, 0.062, 0] + }, + { + "i": {"x": 0.833, "y": 0.887}, + "o": {"x": 0.167, "y": 0.129}, + "t": 38.4, + "s": [370.398, 305.674, 0], + "to": [0.082, -0.062, 0], + "ti": [-0.081, 0.039, 0] + }, + { + "i": {"x": 0.833, "y": 0.859}, + "o": {"x": 0.167, "y": 0.158}, + "t": 39.2, + "s": [370.644, 305.522, 0], + "to": [0.081, -0.039, 0], + "ti": [-0.079, 0.017, 0] + }, + { + "i": {"x": 0.833, "y": 0.84}, + "o": {"x": 0.167, "y": 0.173}, + "t": 40, + "s": [370.885, 305.438, 0], + "to": [0.079, -0.017, 0], + "ti": [-0.075, -0.004, 0] + }, + { + "i": {"x": 0.833, "y": 0.84}, + "o": {"x": 0.167, "y": 0.163}, + "t": 40.8, + "s": [371.117, 305.419, 0], + "to": [0.075, 0.004, 0], + "ti": [-0.071, -0.019, 0] + }, + { + "i": {"x": 0.833, "y": 0.85}, + "o": {"x": 0.167, "y": 0.149}, + "t": 41.6, + "s": [371.334, 305.462, 0], + "to": [0.071, 0.019, 0], + "ti": [-0.071, -0.023, 0] + }, + { + "i": {"x": 0.833, "y": 0.851}, + "o": {"x": 0.167, "y": 0.153}, + "t": 42.4, + "s": [371.546, 305.533, 0], + "to": [0.071, 0.023, 0], + "ti": [-0.069, -0.021, 0] + }, + { + "i": {"x": 0.833, "y": 0.854}, + "o": {"x": 0.167, "y": 0.158}, + "t": 43.2, + "s": [371.758, 305.598, 0], + "to": [0.069, 0.021, 0], + "ti": [-0.064, -0.018, 0] + }, + { + "i": {"x": 0.833, "y": 0.859}, + "o": {"x": 0.167, "y": 0.164}, + "t": 44, + "s": [371.962, 305.656, 0], + "to": [0.064, 0.018, 0], + "ti": [-0.056, -0.014, 0] + }, + { + "i": {"x": 0.833, "y": 0.867}, + "o": {"x": 0.167, "y": 0.175}, + "t": 44.8, + "s": [372.145, 305.704, 0], + "to": [0.056, 0.014, 0], + "ti": [-0.042, -0.01, 0] + }, + { + "i": {"x": 0.833, "y": 0.888}, + "o": {"x": 0.167, "y": 0.195}, + "t": 45.6, + "s": [372.295, 305.741, 0], + "to": [0.042, 0.01, 0], + "ti": [-0.025, -0.005, 0] + }, + { + "i": {"x": 0.833, "y": 0.837}, + "o": {"x": 0.167, "y": 0.279}, + "t": 46.4, + "s": [372.399, 305.764, 0], + "to": [0.025, 0.005, 0], + "ti": [-0.007, -0.001, 0] + }, + {"t": 47.2001953125, "s": [372.443, 305.77, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.331, 1.186, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 9.6, + "s": [64.57, 85.432, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.875, 0.947, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.095, 0.058, 0]}, + "t": 10.4, + "s": [69.942, 108.953, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.206, 0.842, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.249, -0.144, 0]}, + "t": 11.2, + "s": [107.607, 32.831, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.969, 0.836, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.059, 0.176, 0]}, + "t": 12, + "s": [126.531, 60.735, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1, 0.867, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.048, 0.17, 0]}, + "t": 12.8, + "s": [60.769, 85.755, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.908, 1.153, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0, 0.222, 0]}, + "t": 13.6, + "s": [102.39, 109.836, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.333, 0.945, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.877, 0.054, 0]}, + "t": 14.4, + "s": [60.887, 124.258, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.949, 1.054, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.067, -0.162, 0]}, + "t": 15.2, + "s": [56.529, 83.394, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.322, 0.969, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.133, 0.033, 0]}, + "t": 16, + "s": [78.284, 97.261, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.976, 0.786, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.066, -0.05, 0]}, + "t": 16.8, + "s": [69.892, 74.45, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.923, 1.181, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.033, 0.137, 0]}, + "t": 17.6, + "s": [110.724, 88.677, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.066, 0.942, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.984, 0.057, 0]}, + "t": 18.4, + "s": [81.454, 110.927, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.003, 0.937, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.091, -0.193, 0]}, + "t": 19.2, + "s": [83.739, 40.242, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.86, 0.536, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.002, -0.266, 0]}, + "t": 20, + "s": [107.061, 61.553, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.865, 1.004, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.206, 0.102, 0]}, + "t": 20.8, + "s": [83.024, 56.466, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.851, 0.868, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.217, 0.004, 0]}, + "t": 21.6, + "s": [66.63, 33.237, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.158, 0.859, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.189, 0.226, 0]}, + "t": 22.4, + "s": [56.437, 57.54, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.865, 1.267, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.055, 0.203, 0]}, + "t": 23.2, + "s": [48.398, 71.747, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.754, 0.941, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.218, 0.064, 0]}, + "t": 24, + "s": [71.71, 81.652, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.096, 0.683, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.126, -0.203, 0]}, + "t": 24.8, + "s": [86.087, 39.983, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.99, 0.804, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.045, 0.113, 0]}, + "t": 25.6, + "s": [114.075, 52.122, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.96, 0.963, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.012, 0.145, 0]}, + "t": 26.4, + "s": [53.751, 86.117, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.928, 0.79, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.077, -0.066, 0]}, + "t": 27.2, + "s": [106.75, 131.89, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.204, 0.982, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.532, 0.138, 0]}, + "t": 28, + "s": [79.216, 106.312, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.915, 0.889, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.093, -0.024, 0]}, + "t": 28.8, + "s": [82.944, 67.378, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.453, 0.941, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [3.7, 0.337, 0]}, + "t": 29.6, + "s": [114.826, 97.73, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.872, 0.088, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.098, -0.207, 0]}, + "t": 30.4, + "s": [115.562, 107.689, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.944, 0.906, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.076, 0.092, 0]}, + "t": 31.2, + "s": [119.647, 104.826, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.157, 0.579, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.17, 0.758, 0]}, + "t": 32, + "s": [72.833, 76.34, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.962, 0.969, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.054, 0.104, 0]}, + "t": 32.8, + "s": [88.225, 72.82, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.853, 0.888, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.07, -0.05, 0]}, + "t": 33.6, + "s": [43.922, 58.537, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.885, -0.216, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.193, 0.325, 0]}, + "t": 34.4, + "s": [67.927, 67.475, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.471, 1.047, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.3, 0.089, 0]}, + "t": 35.2, + "s": [86.125, 70.552, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.904, 0.934, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.071, 0.03, 0]}, + "t": 36, + "s": [93.113, 112.383, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.526, 1.014, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.633, -0.31, 0]}, + "t": 36.8, + "s": [46.616, 46.845, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.045, 1.106, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.101, 0.012, 0]}, + "t": 37.6, + "s": [39.563, 60.724, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.969, 1.027, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.029, 0.047, 0]}, + "t": 38.4, + "s": [6.525, 44.501, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.929, 0.915, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.05, 0.021, 0]}, + "t": 39.2, + "s": [57.474, 81.367, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.854, 1.348, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.48, 3.658, 0]}, + "t": 40, + "s": [25.518, 32.394, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.966, 0.815, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.195, 0.067, 0]}, + "t": 40.8, + "s": [30.245, 31.253, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.921, 1.317, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.077, 0.152, 0]}, + "t": 41.6, + "s": [33.783, 37.163, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.996, 0.978, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.48, 0.066, 0]}, + "t": 42.4, + "s": [-10.763, 44.348, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.91, 0.989, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.087, -0.029, 0]}, + "t": 43.2, + "s": [-8.389, 9.855, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.194, 0.978, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.177, -0.012, 0]}, + "t": 44, + "s": [46.091, 35.382, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.01, 0.743, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.058, -0.03, 0]}, + "t": 44.8, + "s": [50.24, 13.115, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.876, 0.981, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.009, 0.123, 0]}, + "t": 45.6, + "s": [36.428, 29.519, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.252, -0.025, 0]}, + "t": 46.4, + "s": [51.9, 63.715, 100] + }, + {"t": 47.2001953125, "s": [59.535, 37.52, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "o": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "v": [ + [0.012, 10.621], + [-5.695, 5.34], + [-2.557, -7.377], + [3.15, -2.096] + ], + "c": true + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [0.313725501299, 0.890196084976, 0.760784327984, 1], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-3.421, 4.043], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Rectangle 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 9.599609375, + "op": 48, + "st": 9.599609375, + "bm": 0 + }, + { + "ddd": 0, + "ind": 24, + "ty": 4, + "nm": "Shape Layer 28", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 2.4, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 6.4, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 24, + "s": [100] + }, + {"t": 36.7998046875, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 92, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 2.4, + "s": [270.565, 305.387, 0], + "to": [-0.175, -0.467, 0], + "ti": [0.928, 2.118, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 3.2, + "s": [269.518, 302.585, 0], + "to": [-0.928, -2.118, 0], + "ti": [2.866, 4.132, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 4, + "s": [264.999, 292.679, 0], + "to": [-2.866, -4.132, 0], + "ti": [5.573, 3.332, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 4.8, + "s": [252.323, 277.795, 0], + "to": [-5.573, -3.332, 0], + "ti": [6.454, -0.145, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 5.6, + "s": [231.564, 272.688, 0], + "to": [-6.454, 0.145, 0], + "ti": [5.175, -2.485, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 6.4, + "s": [213.599, 278.665, 0], + "to": [-5.175, 2.485, 0], + "ti": [3.799, -3.017, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 7.2, + "s": [200.516, 287.597, 0], + "to": [-3.799, 3.017, 0], + "ti": [2.848, -2.986, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8, + "s": [190.807, 296.767, 0], + "to": [-2.848, 2.986, 0], + "ti": [2.177, -2.823, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [183.426, 305.511, 0], + "to": [-2.177, 2.823, 0], + "ti": [1.672, -2.64, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [177.747, 313.704, 0], + "to": [-1.672, 2.64, 0], + "ti": [1.269, -2.465, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 10.4, + "s": [173.394, 321.352, 0], + "to": [-1.269, 2.465, 0], + "ti": [0.931, -2.298, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 11.2, + "s": [170.134, 328.494, 0], + "to": [-0.931, 2.298, 0], + "ti": [0.638, -2.135, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12, + "s": [167.806, 335.14, 0], + "to": [-0.638, 2.135, 0], + "ti": [0.374, -1.972, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12.8, + "s": [166.306, 341.307, 0], + "to": [-0.374, 1.972, 0], + "ti": [0.132, -1.802, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 13.6, + "s": [165.565, 346.975, 0], + "to": [-0.132, 1.802, 0], + "ti": [-0.087, -1.628, 0] + }, + { + "i": {"x": 0.833, "y": 0.998}, + "o": {"x": 0.167, "y": 0.003}, + "t": 14.4, + "s": [165.516, 352.122, 0], + "to": [0.087, 1.628, 0], + "ti": [-0.279, -1.446, 0] + }, + { + "i": {"x": 0.833, "y": 0.989}, + "o": {"x": 0.167, "y": 0.012}, + "t": 15.2, + "s": [166.088, 356.74, 0], + "to": [0.279, 1.446, 0], + "ti": [-0.435, -1.255, 0] + }, + { + "i": {"x": 0.833, "y": 0.975}, + "o": {"x": 0.167, "y": 0.028}, + "t": 16, + "s": [167.189, 360.798, 0], + "to": [0.435, 1.255, 0], + "ti": [-0.549, -1.065, 0] + }, + { + "i": {"x": 0.833, "y": 0.957}, + "o": {"x": 0.167, "y": 0.048}, + "t": 16.8, + "s": [168.697, 364.273, 0], + "to": [0.549, 1.065, 0], + "ti": [-0.622, -0.888, 0] + }, + { + "i": {"x": 0.833, "y": 0.937}, + "o": {"x": 0.167, "y": 0.069}, + "t": 17.6, + "s": [170.482, 367.189, 0], + "to": [0.622, 0.888, 0], + "ti": [-0.661, -0.731, 0] + }, + { + "i": {"x": 0.833, "y": 0.919}, + "o": {"x": 0.167, "y": 0.089}, + "t": 18.4, + "s": [172.43, 369.6, 0], + "to": [0.661, 0.731, 0], + "ti": [-0.672, -0.596, 0] + }, + { + "i": {"x": 0.833, "y": 0.902}, + "o": {"x": 0.167, "y": 0.107}, + "t": 19.2, + "s": [174.447, 371.574, 0], + "to": [0.672, 0.596, 0], + "ti": [-0.665, -0.483, 0] + }, + { + "i": {"x": 0.833, "y": 0.888}, + "o": {"x": 0.167, "y": 0.121}, + "t": 20, + "s": [176.464, 373.178, 0], + "to": [0.665, 0.483, 0], + "ti": [-0.646, -0.39, 0] + }, + { + "i": {"x": 0.833, "y": 0.877}, + "o": {"x": 0.167, "y": 0.133}, + "t": 20.8, + "s": [178.436, 374.475, 0], + "to": [0.646, 0.39, 0], + "ti": [-0.62, -0.314, 0] + }, + { + "i": {"x": 0.833, "y": 0.868}, + "o": {"x": 0.167, "y": 0.144}, + "t": 21.6, + "s": [180.337, 375.52, 0], + "to": [0.62, 0.314, 0], + "ti": [-0.589, -0.251, 0] + }, + { + "i": {"x": 0.833, "y": 0.861}, + "o": {"x": 0.167, "y": 0.151}, + "t": 22.4, + "s": [182.153, 376.359, 0], + "to": [0.589, 0.251, 0], + "ti": [-0.557, -0.198, 0] + }, + { + "i": {"x": 0.833, "y": 0.855}, + "o": {"x": 0.167, "y": 0.158}, + "t": 23.2, + "s": [183.874, 377.025, 0], + "to": [0.557, 0.198, 0], + "ti": [-0.524, -0.154, 0] + }, + { + "i": {"x": 0.833, "y": 0.85}, + "o": {"x": 0.167, "y": 0.162}, + "t": 24, + "s": [185.496, 377.549, 0], + "to": [0.524, 0.154, 0], + "ti": [-0.49, -0.117, 0] + }, + { + "i": {"x": 0.833, "y": 0.846}, + "o": {"x": 0.167, "y": 0.166}, + "t": 24.8, + "s": [187.016, 377.951, 0], + "to": [0.49, 0.117, 0], + "ti": [-0.456, -0.086, 0] + }, + { + "i": {"x": 0.833, "y": 0.844}, + "o": {"x": 0.167, "y": 0.17}, + "t": 25.6, + "s": [188.435, 378.252, 0], + "to": [0.456, 0.086, 0], + "ti": [-0.422, -0.059, 0] + }, + { + "i": {"x": 0.833, "y": 0.843}, + "o": {"x": 0.167, "y": 0.172}, + "t": 26.4, + "s": [189.752, 378.465, 0], + "to": [0.422, 0.059, 0], + "ti": [-0.387, -0.035, 0] + }, + { + "i": {"x": 0.833, "y": 0.842}, + "o": {"x": 0.167, "y": 0.175}, + "t": 27.2, + "s": [190.966, 378.603, 0], + "to": [0.387, 0.035, 0], + "ti": [-0.352, -0.015, 0] + }, + { + "i": {"x": 0.833, "y": 0.843}, + "o": {"x": 0.167, "y": 0.176}, + "t": 28, + "s": [192.076, 378.677, 0], + "to": [0.352, 0.015, 0], + "ti": [-0.316, 0.002, 0] + }, + { + "i": {"x": 0.833, "y": 0.844}, + "o": {"x": 0.167, "y": 0.177}, + "t": 28.8, + "s": [193.079, 378.696, 0], + "to": [0.316, -0.002, 0], + "ti": [-0.278, 0.017, 0] + }, + { + "i": {"x": 0.833, "y": 0.846}, + "o": {"x": 0.167, "y": 0.177}, + "t": 29.6, + "s": [193.971, 378.666, 0], + "to": [0.278, -0.017, 0], + "ti": [-0.239, 0.029, 0] + }, + { + "i": {"x": 0.833, "y": 0.852}, + "o": {"x": 0.167, "y": 0.177}, + "t": 30.4, + "s": [194.747, 378.596, 0], + "to": [0.239, -0.029, 0], + "ti": [-0.199, 0.039, 0] + }, + { + "i": {"x": 0.833, "y": 0.859}, + "o": {"x": 0.167, "y": 0.174}, + "t": 31.2, + "s": [195.405, 378.492, 0], + "to": [0.199, -0.039, 0], + "ti": [-0.156, 0.047, 0] + }, + { + "i": {"x": 0.833, "y": 0.874}, + "o": {"x": 0.167, "y": 0.166}, + "t": 32, + "s": [195.939, 378.361, 0], + "to": [0.156, -0.047, 0], + "ti": [-0.11, 0.054, 0] + }, + { + "i": {"x": 0.833, "y": 0.902}, + "o": {"x": 0.167, "y": 0.139}, + "t": 32.8, + "s": [196.341, 378.209, 0], + "to": [0.11, -0.054, 0], + "ti": [-0.061, 0.058, 0] + }, + { + "i": {"x": 0.833, "y": 0.96}, + "o": {"x": 0.167, "y": 0.054}, + "t": 33.6, + "s": [196.601, 378.04, 0], + "to": [0.061, -0.058, 0], + "ti": [-0.017, 0.06, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [196.709, 377.862, 0], + "to": [0.017, -0.06, 0], + "ti": [0.003, 0.066, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 35.2, + "s": [196.702, 377.682, 0], + "to": [-0.003, -0.066, 0], + "ti": [-0.001, 0.08, 0] + }, + { + "i": {"x": 0.833, "y": 0.999}, + "o": {"x": 0.167, "y": 0.001}, + "t": 36, + "s": [196.693, 377.464, 0], + "to": [0.001, -0.08, 0], + "ti": [-0.01, 0.093, 0] + }, + { + "i": {"x": 0.833, "y": 0.996}, + "o": {"x": 0.167, "y": 0.003}, + "t": 36.8, + "s": [196.709, 377.203, 0], + "to": [0.01, -0.093, 0], + "ti": [-0.019, 0.104, 0] + }, + { + "i": {"x": 0.833, "y": 0.992}, + "o": {"x": 0.167, "y": 0.007}, + "t": 37.6, + "s": [196.752, 376.906, 0], + "to": [0.019, -0.104, 0], + "ti": [-0.028, 0.112, 0] + }, + { + "i": {"x": 0.833, "y": 0.987}, + "o": {"x": 0.167, "y": 0.012}, + "t": 38.4, + "s": [196.823, 376.58, 0], + "to": [0.028, -0.112, 0], + "ti": [-0.038, 0.118, 0] + }, + { + "i": {"x": 0.833, "y": 0.98}, + "o": {"x": 0.167, "y": 0.019}, + "t": 39.2, + "s": [196.923, 376.233, 0], + "to": [0.038, -0.118, 0], + "ti": [-0.049, 0.122, 0] + }, + { + "i": {"x": 0.833, "y": 0.973}, + "o": {"x": 0.167, "y": 0.026}, + "t": 40, + "s": [197.053, 375.871, 0], + "to": [0.049, -0.122, 0], + "ti": [-0.059, 0.124, 0] + }, + { + "i": {"x": 0.833, "y": 0.965}, + "o": {"x": 0.167, "y": 0.034}, + "t": 40.8, + "s": [197.215, 375.501, 0], + "to": [0.059, -0.124, 0], + "ti": [-0.069, 0.124, 0] + }, + { + "i": {"x": 0.833, "y": 0.955}, + "o": {"x": 0.167, "y": 0.043}, + "t": 41.6, + "s": [197.407, 375.127, 0], + "to": [0.069, -0.124, 0], + "ti": [-0.079, 0.122, 0] + }, + { + "i": {"x": 0.833, "y": 0.945}, + "o": {"x": 0.167, "y": 0.054}, + "t": 42.4, + "s": [197.63, 374.756, 0], + "to": [0.079, -0.122, 0], + "ti": [-0.089, 0.119, 0] + }, + { + "i": {"x": 0.833, "y": 0.934}, + "o": {"x": 0.167, "y": 0.065}, + "t": 43.2, + "s": [197.883, 374.392, 0], + "to": [0.089, -0.119, 0], + "ti": [-0.099, 0.115, 0] + }, + { + "i": {"x": 0.833, "y": 0.923}, + "o": {"x": 0.167, "y": 0.076}, + "t": 44, + "s": [198.166, 374.04, 0], + "to": [0.099, -0.115, 0], + "ti": [-0.108, 0.109, 0] + }, + { + "i": {"x": 0.833, "y": 0.912}, + "o": {"x": 0.167, "y": 0.088}, + "t": 44.8, + "s": [198.477, 373.703, 0], + "to": [0.108, -0.109, 0], + "ti": [-0.116, 0.102, 0] + }, + { + "i": {"x": 0.833, "y": 0.9}, + "o": {"x": 0.167, "y": 0.099}, + "t": 45.6, + "s": [198.814, 373.385, 0], + "to": [0.116, -0.102, 0], + "ti": [-0.124, 0.095, 0] + }, + { + "i": {"x": 0.833, "y": 0.889}, + "o": {"x": 0.167, "y": 0.11}, + "t": 46.4, + "s": [199.175, 373.088, 0], + "to": [0.124, -0.095, 0], + "ti": [-0.064, 0.045, 0] + }, + {"t": 47.2001953125, "s": [199.559, 372.816, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.903, 1.422, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 2.4, + "s": [94.702, 122.655, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.272, 0.85, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.6, 0.07, 0]}, + "t": 3.2, + "s": [127.289, 129.977, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.732, 1.117, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.064, 0.187, 0]}, + "t": 4, + "s": [132.545, 85.581, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.963, 0.916, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.121, 0.049, 0]}, + "t": 4.8, + "s": [110.128, 50.029, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.861, 2.844, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.066, 6.421, 0]}, + "t": 5.6, + "s": [60.526, 135.359, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.066, 0.745, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.209, 0.08, 0]}, + "t": 6.4, + "s": [88.167, 136.482, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.966, 0.932, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.037, 0.124, 0]}, + "t": 7.2, + "s": [106.49, 110.542, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.936, 0.426, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.056, -0.36, 0]}, + "t": 8, + "s": [73.621, 57.227, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.484, 1.02, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.27, 0.097, 0]}, + "t": 8.8, + "s": [93.234, 67.259, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.866, 0.935, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.071, 0.016, 0]}, + "t": 9.6, + "s": [88.608, 126.279, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.185, 0.861, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.221, -0.293, 0]}, + "t": 10.4, + "s": [120.076, 52.9, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.916, 0.706, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.057, 0.207, 0]}, + "t": 11.2, + "s": [139.099, 69.169, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-1.44, 0.819, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [6.73, 0.116, 0]}, + "t": 12, + "s": [77.908, 80.095, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.941, 1.013, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.086, 0.155, 0]}, + "t": 12.8, + "s": [77.141, 107.685, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.598, 0.859, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.198, 0.011, 0]}, + "t": 13.6, + "s": [55.437, 139.887, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.889, 0.971, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.105, 0.204, 0]}, + "t": 14.4, + "s": [61.857, 102.633, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.557, 0.988, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.337, -0.045, 0]}, + "t": 15.2, + "s": [86.378, 76.933, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.048, 1.193, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.103, -0.014, 0]}, + "t": 16, + "s": [94.434, 93.656, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.894, 0.969, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.03, 0.058, 0]}, + "t": 16.8, + "s": [129.176, 79.379, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.003, 0.846, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.385, -0.049, 0]}, + "t": 17.6, + "s": [74.62, 126.637, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.783, 0.843, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.003, 0.182, 0]}, + "t": 18.4, + "s": [59.528, 96.902, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.987, 0.929, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.135, 0.178, 0]}, + "t": 19.2, + "s": [75.163, 71.778, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.98, 0.157, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.016, -0.467, 0]}, + "t": 20, + "s": [100.236, 49.638, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.196, 0.894, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.026, 0.092, 0]}, + "t": 20.8, + "s": [79.183, 52.988, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.937, 1.011, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.058, 0.384, 0]}, + "t": 21.6, + "s": [95.26, 83.538, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.998, 0.441, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.251, 0.01, 0]}, + "t": 22.4, + "s": [41.321, 92.009, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.333, 0.953, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.002, 0.098, 0]}, + "t": 23.2, + "s": [54.762, 82.447, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.996, 0.891, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.067, -0.107, 0]}, + "t": 24, + "s": [41.586, 27.852, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.941, 0.229, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.004, 0.35, 0]}, + "t": 24.8, + "s": [107.415, 51.724, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.942, 0.994, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.201, 0.093, 0]}, + "t": 25.6, + "s": [44.413, 59.172, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.637, 0.897, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.19, -0.007, 0]}, + "t": 26.4, + "s": [62.871, 120.641, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.914, 1.033, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.108, 0.443, 0]}, + "t": 27.2, + "s": [57.246, 63.863, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [3.766, 0.841, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [2.629, 0.024, 0]}, + "t": 28, + "s": [38.372, 50.708, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.822, 1.066, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.081, 0.175, 0]}, + "t": 28.8, + "s": [37.754, 69.059, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.994, 0.844, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.156, 0.037, 0]}, + "t": 29.6, + "s": [58.88, 85.746, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.943, 1.009, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.007, 0.179, 0]}, + "t": 30.4, + "s": [83, 55.846, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.235, 1.083, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.184, 0.008, 0]}, + "t": 31.2, + "s": [60.74, 29.847, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.881, 0.964, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.061, 0.042, 0]}, + "t": 32, + "s": [67.668, 58.5, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.257, 0.898, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.279, -0.062, 0]}, + "t": 32.8, + "s": [41.227, 1.342, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.914, 0.99, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.063, 0.452, 0]}, + "t": 33.6, + "s": [29.972, 34.049, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [3.557, 0.889, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [2.355, -0.011, 0]}, + "t": 34.4, + "s": [75.997, 41.447, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.923, 0.757, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.081, 0.337, 0]}, + "t": 35.2, + "s": [77.684, 34.902, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.665, 1.132, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.086, 0.127, 0]}, + "t": 36, + "s": [24.202, 32.753, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.007, 0.637, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.074, 0.051, 0]}, + "t": 36.8, + "s": [28.012, 28.648, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.981, 0.974, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.006, 0.108, 0]}, + "t": 37.6, + "s": [-6.22, 39.267, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1, 0.981, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.024, -0.038, 0]}, + "t": 38.4, + "s": [30.742, 74.855, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.934, 1.113, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0, -0.024, 0]}, + "t": 39.2, + "s": [2.023, 50.337, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.727, 0.883, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.326, 0.048, 0]}, + "t": 40, + "s": [30.77, 69.402, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.902, 1.045, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.12, 0.292, 0]}, + "t": 40.8, + "s": [24.92, 24.502, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.109, 0.909, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.551, 0.029, 0]}, + "t": 41.6, + "s": [11.611, 6.547, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.948, 0.904, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.078, 0.962, 0]}, + "t": 42.4, + "s": [9.235, 34.159, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.825, -0.409, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.138, 0.611, 0]}, + "t": 43.2, + "s": [43.201, 36.778, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.973, 0.815, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.159, 0.089, 0]}, + "t": 44, + "s": [30.429, 37.192, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.903, 1.034, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.039, 0.152, 0]}, + "t": 44.8, + "s": [16.318, 43.768, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.409, 0.765, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.601, 0.024, 0]}, + "t": 45.6, + "s": [25.931, 51.757, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.089, 0.129, 0]}, + "t": 46.4, + "s": [27.481, 40.555, 100] + }, + {"t": 47.2001953125, "s": [52.128, 20.168, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": {"a": 0, "k": [10, 10], "ix": 2}, + "p": {"a": 0, "k": [0, 0], "ix": 3}, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [1, 0.101960785687, 0.380392163992, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Ellipse 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 2.400390625, + "op": 48, + "st": 2.400390625, + "bm": 0 + }, + { + "ddd": 0, + "ind": 25, + "ty": 4, + "nm": "Shape Layer 27", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 0.8, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 4.8, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 22.4, + "s": [100] + }, + {"t": 35.2001953125, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 92, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 0.913}, + "o": {"x": 0.167, "y": 0.033}, + "t": 0.8, + "s": [264.583, 303.394, 0], + "to": [0.152, -0.309, 0], + "ti": [-0.732, 1.703, 0] + }, + { + "i": {"x": 0.833, "y": 0.965}, + "o": {"x": 0.167, "y": 0.015}, + "t": 1.6, + "s": [265.494, 301.541, 0], + "to": [0.732, -1.703, 0], + "ti": [-1.362, 4.094, 0] + }, + { + "i": {"x": 0.833, "y": 0.986}, + "o": {"x": 0.167, "y": 0.01}, + "t": 2.4, + "s": [268.975, 293.174, 0], + "to": [1.362, -4.094, 0], + "ti": [-1.445, 5.76, 0] + }, + { + "i": {"x": 0.833, "y": 0.993}, + "o": {"x": 0.167, "y": 0.007}, + "t": 3.2, + "s": [273.666, 276.977, 0], + "to": [1.445, -5.76, 0], + "ti": [-1.23, 5.729, 0] + }, + { + "i": {"x": 0.833, "y": 0.993}, + "o": {"x": 0.167, "y": 0.008}, + "t": 4, + "s": [277.646, 258.613, 0], + "to": [1.23, -5.729, 0], + "ti": [-1.123, 4.869, 0] + }, + { + "i": {"x": 0.833, "y": 0.991}, + "o": {"x": 0.167, "y": 0.011}, + "t": 4.8, + "s": [281.044, 242.601, 0], + "to": [1.123, -4.869, 0], + "ti": [-1.146, 4.013, 0] + }, + { + "i": {"x": 0.833, "y": 0.985}, + "o": {"x": 0.167, "y": 0.018}, + "t": 5.6, + "s": [284.385, 229.397, 0], + "to": [1.146, -4.013, 0], + "ti": [-1.227, 3.315, 0] + }, + { + "i": {"x": 0.833, "y": 0.976}, + "o": {"x": 0.167, "y": 0.028}, + "t": 6.4, + "s": [287.919, 218.524, 0], + "to": [1.227, -3.315, 0], + "ti": [-1.326, 2.748, 0] + }, + { + "i": {"x": 0.833, "y": 0.963}, + "o": {"x": 0.167, "y": 0.042}, + "t": 7.2, + "s": [291.745, 209.508, 0], + "to": [1.326, -2.748, 0], + "ti": [-1.42, 2.27, 0] + }, + { + "i": {"x": 0.833, "y": 0.947}, + "o": {"x": 0.167, "y": 0.06}, + "t": 8, + "s": [295.873, 202.037, 0], + "to": [1.42, -2.27, 0], + "ti": [-1.493, 1.856, 0] + }, + { + "i": {"x": 0.833, "y": 0.928}, + "o": {"x": 0.167, "y": 0.08}, + "t": 8.8, + "s": [300.264, 195.89, 0], + "to": [1.493, -1.856, 0], + "ti": [-1.535, 1.495, 0] + }, + { + "i": {"x": 0.833, "y": 0.908}, + "o": {"x": 0.167, "y": 0.101}, + "t": 9.6, + "s": [304.832, 190.902, 0], + "to": [1.535, -1.495, 0], + "ti": [-1.541, 1.186, 0] + }, + { + "i": {"x": 0.833, "y": 0.891}, + "o": {"x": 0.167, "y": 0.12}, + "t": 10.4, + "s": [309.473, 186.917, 0], + "to": [1.541, -1.186, 0], + "ti": [-1.513, 0.928, 0] + }, + { + "i": {"x": 0.833, "y": 0.876}, + "o": {"x": 0.167, "y": 0.134}, + "t": 11.2, + "s": [314.076, 183.786, 0], + "to": [1.513, -0.928, 0], + "ti": [-1.459, 0.719, 0] + }, + { + "i": {"x": 0.833, "y": 0.866}, + "o": {"x": 0.167, "y": 0.145}, + "t": 12, + "s": [318.551, 181.352, 0], + "to": [1.459, -0.719, 0], + "ti": [-1.388, 0.557, 0] + }, + { + "i": {"x": 0.833, "y": 0.858}, + "o": {"x": 0.167, "y": 0.154}, + "t": 12.8, + "s": [322.832, 179.47, 0], + "to": [1.388, -0.557, 0], + "ti": [-1.306, 0.432, 0] + }, + { + "i": {"x": 0.833, "y": 0.853}, + "o": {"x": 0.167, "y": 0.16}, + "t": 13.6, + "s": [326.879, 178.013, 0], + "to": [1.306, -0.432, 0], + "ti": [-1.218, 0.338, 0] + }, + { + "i": {"x": 0.833, "y": 0.85}, + "o": {"x": 0.167, "y": 0.164}, + "t": 14.4, + "s": [330.667, 176.878, 0], + "to": [1.218, -0.338, 0], + "ti": [-1.129, 0.269, 0] + }, + { + "i": {"x": 0.833, "y": 0.848}, + "o": {"x": 0.167, "y": 0.166}, + "t": 15.2, + "s": [334.187, 175.983, 0], + "to": [1.129, -0.269, 0], + "ti": [-1.043, 0.219, 0] + }, + { + "i": {"x": 0.833, "y": 0.846}, + "o": {"x": 0.167, "y": 0.168}, + "t": 16, + "s": [337.444, 175.264, 0], + "to": [1.043, -0.219, 0], + "ti": [-0.959, 0.182, 0] + }, + { + "i": {"x": 0.833, "y": 0.847}, + "o": {"x": 0.167, "y": 0.168}, + "t": 16.8, + "s": [340.444, 174.672, 0], + "to": [0.959, -0.182, 0], + "ti": [-0.877, 0.155, 0] + }, + { + "i": {"x": 0.833, "y": 0.845}, + "o": {"x": 0.167, "y": 0.17}, + "t": 17.6, + "s": [343.196, 174.174, 0], + "to": [0.877, -0.155, 0], + "ti": [-0.798, 0.134, 0] + }, + { + "i": {"x": 0.833, "y": 0.846}, + "o": {"x": 0.167, "y": 0.171}, + "t": 18.4, + "s": [345.706, 173.744, 0], + "to": [0.798, -0.134, 0], + "ti": [-0.72, 0.119, 0] + }, + { + "i": {"x": 0.833, "y": 0.846}, + "o": {"x": 0.167, "y": 0.172}, + "t": 19.2, + "s": [347.981, 173.367, 0], + "to": [0.72, -0.119, 0], + "ti": [-0.644, 0.106, 0] + }, + { + "i": {"x": 0.833, "y": 0.847}, + "o": {"x": 0.167, "y": 0.173}, + "t": 20, + "s": [350.026, 173.032, 0], + "to": [0.644, -0.106, 0], + "ti": [-0.57, 0.094, 0] + }, + { + "i": {"x": 0.833, "y": 0.849}, + "o": {"x": 0.167, "y": 0.174}, + "t": 20.8, + "s": [351.847, 172.732, 0], + "to": [0.57, -0.094, 0], + "ti": [-0.497, 0.083, 0] + }, + { + "i": {"x": 0.833, "y": 0.849}, + "o": {"x": 0.167, "y": 0.176}, + "t": 21.6, + "s": [353.446, 172.467, 0], + "to": [0.497, -0.083, 0], + "ti": [-0.429, 0.075, 0] + }, + { + "i": {"x": 0.833, "y": 0.845}, + "o": {"x": 0.167, "y": 0.174}, + "t": 22.4, + "s": [354.827, 172.237, 0], + "to": [0.429, -0.075, 0], + "ti": [-0.38, 0.083, 0] + }, + { + "i": {"x": 0.833, "y": 0.849}, + "o": {"x": 0.167, "y": 0.163}, + "t": 23.2, + "s": [356.018, 172.02, 0], + "to": [0.38, -0.083, 0], + "ti": [-0.347, 0.103, 0] + }, + { + "i": {"x": 0.833, "y": 0.855}, + "o": {"x": 0.167, "y": 0.154}, + "t": 24, + "s": [357.106, 171.74, 0], + "to": [0.347, -0.103, 0], + "ti": [-0.318, 0.12, 0] + }, + { + "i": {"x": 0.833, "y": 0.863}, + "o": {"x": 0.167, "y": 0.147}, + "t": 24.8, + "s": [358.103, 171.404, 0], + "to": [0.318, -0.12, 0], + "ti": [-0.291, 0.134, 0] + }, + { + "i": {"x": 0.833, "y": 0.87}, + "o": {"x": 0.167, "y": 0.138}, + "t": 25.6, + "s": [359.015, 171.022, 0], + "to": [0.291, -0.134, 0], + "ti": [-0.265, 0.144, 0] + }, + { + "i": {"x": 0.833, "y": 0.879}, + "o": {"x": 0.167, "y": 0.128}, + "t": 26.4, + "s": [359.846, 170.603, 0], + "to": [0.265, -0.144, 0], + "ti": [-0.24, 0.151, 0] + }, + { + "i": {"x": 0.833, "y": 0.89}, + "o": {"x": 0.167, "y": 0.118}, + "t": 27.2, + "s": [360.602, 170.159, 0], + "to": [0.24, -0.151, 0], + "ti": [-0.216, 0.155, 0] + }, + { + "i": {"x": 0.833, "y": 0.898}, + "o": {"x": 0.167, "y": 0.109}, + "t": 28, + "s": [361.284, 169.698, 0], + "to": [0.216, -0.155, 0], + "ti": [-0.193, 0.156, 0] + }, + { + "i": {"x": 0.833, "y": 0.907}, + "o": {"x": 0.167, "y": 0.1}, + "t": 28.8, + "s": [361.896, 169.23, 0], + "to": [0.193, -0.156, 0], + "ti": [-0.172, 0.154, 0] + }, + { + "i": {"x": 0.833, "y": 0.916}, + "o": {"x": 0.167, "y": 0.092}, + "t": 29.6, + "s": [362.443, 168.763, 0], + "to": [0.172, -0.154, 0], + "ti": [-0.151, 0.15, 0] + }, + { + "i": {"x": 0.833, "y": 0.924}, + "o": {"x": 0.167, "y": 0.083}, + "t": 30.4, + "s": [362.927, 168.306, 0], + "to": [0.151, -0.15, 0], + "ti": [-0.13, 0.143, 0] + }, + { + "i": {"x": 0.833, "y": 0.934}, + "o": {"x": 0.167, "y": 0.075}, + "t": 31.2, + "s": [363.348, 167.866, 0], + "to": [0.13, -0.143, 0], + "ti": [-0.109, 0.134, 0] + }, + { + "i": {"x": 0.833, "y": 0.942}, + "o": {"x": 0.167, "y": 0.065}, + "t": 32, + "s": [363.707, 167.448, 0], + "to": [0.109, -0.134, 0], + "ti": [-0.095, 0.123, 0] + }, + { + "i": {"x": 0.833, "y": 0.939}, + "o": {"x": 0.167, "y": 0.067}, + "t": 32.8, + "s": [364.004, 167.059, 0], + "to": [0.095, -0.123, 0], + "ti": [-0.093, 0.109, 0] + }, + { + "i": {"x": 0.833, "y": 0.925}, + "o": {"x": 0.167, "y": 0.08}, + "t": 33.6, + "s": [364.278, 166.709, 0], + "to": [0.093, -0.109, 0], + "ti": [-0.096, 0.093, 0] + }, + { + "i": {"x": 0.833, "y": 0.908}, + "o": {"x": 0.167, "y": 0.099}, + "t": 34.4, + "s": [364.562, 166.405, 0], + "to": [0.096, -0.093, 0], + "ti": [-0.099, 0.076, 0] + }, + { + "i": {"x": 0.833, "y": 0.89}, + "o": {"x": 0.167, "y": 0.118}, + "t": 35.2, + "s": [364.856, 166.152, 0], + "to": [0.099, -0.076, 0], + "ti": [-0.1, 0.058, 0] + }, + { + "i": {"x": 0.833, "y": 0.871}, + "o": {"x": 0.167, "y": 0.139}, + "t": 36, + "s": [365.154, 165.951, 0], + "to": [0.1, -0.058, 0], + "ti": [-0.1, 0.041, 0] + }, + { + "i": {"x": 0.833, "y": 0.854}, + "o": {"x": 0.167, "y": 0.156}, + "t": 36.8, + "s": [365.455, 165.803, 0], + "to": [0.1, -0.041, 0], + "ti": [-0.099, 0.023, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.167}, + "t": 37.6, + "s": [365.754, 165.707, 0], + "to": [0.099, -0.023, 0], + "ti": [-0.096, 0.006, 0] + }, + { + "i": {"x": 0.833, "y": 0.835}, + "o": {"x": 0.167, "y": 0.17}, + "t": 38.4, + "s": [366.048, 165.664, 0], + "to": [0.096, -0.006, 0], + "ti": [-0.093, -0.01, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.161}, + "t": 39.2, + "s": [366.333, 165.672, 0], + "to": [0.093, 0.01, 0], + "ti": [-0.088, -0.026, 0] + }, + { + "i": {"x": 0.833, "y": 0.857}, + "o": {"x": 0.167, "y": 0.145}, + "t": 40, + "s": [366.605, 165.727, 0], + "to": [0.088, 0.026, 0], + "ti": [-0.082, -0.04, 0] + }, + { + "i": {"x": 0.833, "y": 0.877}, + "o": {"x": 0.167, "y": 0.123}, + "t": 40.8, + "s": [366.86, 165.827, 0], + "to": [0.082, 0.04, 0], + "ti": [-0.074, -0.052, 0] + }, + { + "i": {"x": 0.833, "y": 0.903}, + "o": {"x": 0.167, "y": 0.098}, + "t": 41.6, + "s": [367.094, 165.966, 0], + "to": [0.074, 0.052, 0], + "ti": [-0.065, -0.063, 0] + }, + { + "i": {"x": 0.833, "y": 0.928}, + "o": {"x": 0.167, "y": 0.073}, + "t": 42.4, + "s": [367.302, 166.14, 0], + "to": [0.065, 0.063, 0], + "ti": [-0.054, -0.071, 0] + }, + { + "i": {"x": 0.833, "y": 0.952}, + "o": {"x": 0.167, "y": 0.049}, + "t": 43.2, + "s": [367.481, 166.343, 0], + "to": [0.054, 0.071, 0], + "ti": [-0.042, -0.077, 0] + }, + { + "i": {"x": 0.833, "y": 0.973}, + "o": {"x": 0.167, "y": 0.028}, + "t": 44, + "s": [367.625, 166.567, 0], + "to": [0.042, 0.077, 0], + "ti": [-0.028, -0.08, 0] + }, + { + "i": {"x": 0.833, "y": 0.99}, + "o": {"x": 0.167, "y": 0.01}, + "t": 44.8, + "s": [367.73, 166.804, 0], + "to": [0.028, 0.08, 0], + "ti": [-0.012, -0.079, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 45.6, + "s": [367.791, 167.045, 0], + "to": [0.012, 0.079, 0], + "ti": [0.003, -0.077, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 46.4, + "s": [367.803, 167.28, 0], + "to": [-0.003, 0.077, 0], + "ti": [0.005, -0.038, 0] + }, + {"t": 47.2001953125, "s": [367.776, 167.508, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.282, 0.584, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 0.8, + "s": [72.171, 102.828, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.885, 1.039, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.089, 0.104, 0]}, + "t": 1.6, + "s": [75.523, 112.995, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.019, 0.877, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.304, 0.027, 0]}, + "t": 2.4, + "s": [123.744, 153.636, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.693, 1.033, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.016, 0.256, 0]}, + "t": 3.2, + "s": [141.925, 93.916, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.936, 0.883, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.114, 0.023, 0]}, + "t": 4, + "s": [119.587, 65.139, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.769, 0.894, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.276, 0.289, 0]}, + "t": 4.8, + "s": [59.668, 105.203, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.003, 2.033, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.13, 0.39, 0]}, + "t": 5.6, + "s": [73.555, 121.412, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.032, 0.905, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.003, 0.077, 0]}, + "t": 6.4, + "s": [98.171, 125.813, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.887, 1.503, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.023, 0.67, 0]}, + "t": 7.2, + "s": [72.643, 66.925, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.904, 0.969, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.315, 0.071, 0]}, + "t": 8, + "s": [108.084, 58.564, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.479, 0.968, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.612, -0.05, 0]}, + "t": 8.8, + "s": [120.859, 117.368, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.764, 0.88, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.071, -0.052, 0]}, + "t": 9.6, + "s": [122.874, 80.731, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.916, 1.012, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.129, 0.273, 0]}, + "t": 10.4, + "s": [109.267, 103.32, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [3.632, 1.171, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [12.527, 0.011, 0]}, + "t": 11.2, + "s": [84.332, 113.266, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.72, 0.952, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.081, 0.056, 0]}, + "t": 12, + "s": [84.165, 101.864, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.993, 0.575, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.119, -0.115, 0]}, + "t": 12.8, + "s": [89.607, 136.724, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.905, 0.946, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.007, 0.104, 0]}, + "t": 13.6, + "s": [102.429, 122.041, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.566, 0.936, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.667, -0.15, 0]}, + "t": 14.4, + "s": [90.653, 61.798, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.025, 1.312, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.079, -0.274, 0]}, + "t": 15.2, + "s": [88.97, 83.343, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.879, 0.882, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.019, 0.066, 0]}, + "t": 16, + "s": [122.282, 78.321, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.099, 0.909, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.27, 0.282, 0]}, + "t": 16.8, + "s": [78.796, 102.131, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.927, 5.122, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.045, 0.946, 0]}, + "t": 17.6, + "s": [59.361, 112.137, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.136, 0.975, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.587, 0.082, 0]}, + "t": 18.4, + "s": [102.002, 113.104, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.943, 0.921, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.052, -0.036, 0]}, + "t": 19.2, + "s": [96.704, 64.316, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.841, 2.162, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.183, -1.67, 0]}, + "t": 20, + "s": [110.65, 98.408, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.252, 1.02, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.176, 0.078, 0]}, + "t": 20.8, + "s": [106.279, 96.788, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.859, 0.808, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.094, 0.016, 0]}, + "t": 21.6, + "s": [102.331, 121.007, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.964, 0.929, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.205, 0.147, 0]}, + "t": 22.4, + "s": [70.842, 91.027, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.045, 0.592, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.063, -0.479, 0]}, + "t": 23.2, + "s": [49.193, 51.754, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.816, 0.982, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.029, 0.105, 0]}, + "t": 24, + "s": [61.557, 57.576, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.115, 0.844, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.152, -0.022, 0]}, + "t": 24.8, + "s": [42.519, 80.235, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.93, 0.834, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.048, 0.179, 0]}, + "t": 25.6, + "s": [19.507, 62.344, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.463, 1.029, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.45, 0.167, 0]}, + "t": 26.4, + "s": [74.401, 46.72, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.951, 0.852, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.099, 0.021, 0]}, + "t": 27.2, + "s": [65.831, 31.185, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.744, 1.068, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.12, 0.191, 0]}, + "t": 28, + "s": [19.228, 52.105, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.91, 0.811, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.124, 0.037, 0]}, + "t": 28.8, + "s": [38.347, 68.326, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.616, 1.069, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.167, 0.149, 0]}, + "t": 29.6, + "s": [77.863, 38.956, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.84, 0.995, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.073, 0.038, 0]}, + "t": 30.4, + "s": [80.904, 1.852, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.914, 0.924, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.174, -0.006, 0]}, + "t": 31.2, + "s": [55.41, 69.603, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [4.374, 0.208, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [2.747, -0.921, 0]}, + "t": 32, + "s": [31.879, 6.237, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.903, 1.05, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.081, 0.093, 0]}, + "t": 32.8, + "s": [31.143, 11.494, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.257, 0.972, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.591, 0.031, 0]}, + "t": 33.6, + "s": [61.679, 56.19, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.875, 0.989, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.063, -0.042, 0]}, + "t": 34.4, + "s": [66.703, -15.414, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.777, 0.969, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.252, -0.012, 0]}, + "t": 35.2, + "s": [46.165, 32.254, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.071, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.133, -0.048, 0]}, + "t": 36, + "s": [36.01, -9.217, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.042, 0.895, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.038, 0.166, 0]}, + "t": 36.8, + "s": [18.977, 17.016, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.967, 0.64, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.028, 0.41, 0]}, + "t": 37.6, + "s": [50.584, 43.433, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.951, 1.026, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.054, 0.108, 0]}, + "t": 38.4, + "s": [3.2, 50.175, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.826, 0.687, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.121, 0.02, 0]}, + "t": 39.2, + "s": [31.978, 72.587, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.958, 0.985, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.16, 0.114, 0]}, + "t": 40, + "s": [20.225, 43.283, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.531, 0.899, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.084, -0.019, 0]}, + "t": 40.8, + "s": [7.424, -37.423, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.924, 0.885, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.101, 0.475, 0]}, + "t": 41.6, + "s": [13.811, 28.463, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.207, 0.722, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.872, 0.302, 0]}, + "t": 42.4, + "s": [43.338, 42.467, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.956, 0.943, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.09, 0.119, 0]}, + "t": 43.2, + "s": [40.761, 47.811, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.074, 0.996, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.092, -0.177, 0]}, + "t": 44, + "s": [6.006, 60.269, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.951, 2.021, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.039, -0.004, 0]}, + "t": 44.8, + "s": [22.502, 56.273, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.823, 0.991, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.12, 0.077, 0]}, + "t": 45.6, + "s": [-8.669, 60.085, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.158, -0.01, 0]}, + "t": 46.4, + "s": [4.137, 9.589, 100] + }, + {"t": 47.2001953125, "s": [18.516, 54.805, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": {"a": 0, "k": [10, 10], "ix": 2}, + "p": {"a": 0, "k": [0, 0], "ix": 3}, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [1, 0.101960785687, 0.380392163992, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Ellipse 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0.7998046875, + "op": 48, + "st": 0.7998046875, + "bm": 0 + }, + { + "ddd": 0, + "ind": 26, + "ty": 4, + "nm": "Shape Layer 26", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 3.2, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 7.2, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 24.8, + "s": [100] + }, + {"t": 37.599609375, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 92, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 0.727}, + "o": {"x": 0.167, "y": 0.111}, + "t": 3.2, + "s": [269.491, 306.01, 0], + "to": [0.367, 0.261, 0], + "ti": [-1.762, -1.355, 0] + }, + { + "i": {"x": 0.833, "y": 0.854}, + "o": {"x": 0.167, "y": 0.065}, + "t": 4, + "s": [271.692, 307.579, 0], + "to": [1.762, 1.355, 0], + "ti": [-4.055, -2.961, 0] + }, + { + "i": {"x": 0.833, "y": 0.882}, + "o": {"x": 0.167, "y": 0.087}, + "t": 4.8, + "s": [280.065, 314.139, 0], + "to": [4.055, 2.961, 0], + "ti": [-5.763, -3.712, 0] + }, + { + "i": {"x": 0.833, "y": 0.885}, + "o": {"x": 0.167, "y": 0.117}, + "t": 5.6, + "s": [296.024, 325.342, 0], + "to": [5.763, 3.712, 0], + "ti": [-5.909, -3.26, 0] + }, + { + "i": {"x": 0.833, "y": 0.878}, + "o": {"x": 0.167, "y": 0.143}, + "t": 6.4, + "s": [314.641, 336.411, 0], + "to": [5.909, 3.26, 0], + "ti": [-5.199, -2.461, 0] + }, + { + "i": {"x": 0.833, "y": 0.872}, + "o": {"x": 0.167, "y": 0.155}, + "t": 7.2, + "s": [331.476, 344.903, 0], + "to": [5.199, 2.461, 0], + "ti": [-4.435, -1.834, 0] + }, + { + "i": {"x": 0.833, "y": 0.866}, + "o": {"x": 0.167, "y": 0.159}, + "t": 8, + "s": [345.833, 351.179, 0], + "to": [4.435, 1.834, 0], + "ti": [-3.802, -1.398, 0] + }, + { + "i": {"x": 0.833, "y": 0.862}, + "o": {"x": 0.167, "y": 0.162}, + "t": 8.8, + "s": [358.083, 355.908, 0], + "to": [3.802, 1.398, 0], + "ti": [-3.292, -1.093, 0] + }, + { + "i": {"x": 0.833, "y": 0.858}, + "o": {"x": 0.167, "y": 0.164}, + "t": 9.6, + "s": [368.642, 359.567, 0], + "to": [3.292, 1.093, 0], + "ti": [-2.886, -0.867, 0] + }, + { + "i": {"x": 0.833, "y": 0.855}, + "o": {"x": 0.167, "y": 0.164}, + "t": 10.4, + "s": [377.836, 362.467, 0], + "to": [2.886, 0.867, 0], + "ti": [-2.566, -0.687, 0] + }, + { + "i": {"x": 0.833, "y": 0.852}, + "o": {"x": 0.167, "y": 0.167}, + "t": 11.2, + "s": [385.959, 364.771, 0], + "to": [2.566, 0.687, 0], + "ti": [-2.306, -0.543, 0] + }, + { + "i": {"x": 0.833, "y": 0.849}, + "o": {"x": 0.167, "y": 0.168}, + "t": 12, + "s": [393.233, 366.589, 0], + "to": [2.306, 0.543, 0], + "ti": [-2.085, -0.431, 0] + }, + { + "i": {"x": 0.833, "y": 0.847}, + "o": {"x": 0.167, "y": 0.17}, + "t": 12.8, + "s": [399.792, 368.03, 0], + "to": [2.085, 0.431, 0], + "ti": [-1.895, -0.342, 0] + }, + { + "i": {"x": 0.833, "y": 0.845}, + "o": {"x": 0.167, "y": 0.171}, + "t": 13.6, + "s": [405.741, 369.174, 0], + "to": [1.895, 0.342, 0], + "ti": [-1.729, -0.272, 0] + }, + { + "i": {"x": 0.833, "y": 0.844}, + "o": {"x": 0.167, "y": 0.171}, + "t": 14.4, + "s": [411.16, 370.082, 0], + "to": [1.729, 0.272, 0], + "ti": [-1.583, -0.217, 0] + }, + { + "i": {"x": 0.833, "y": 0.842}, + "o": {"x": 0.167, "y": 0.172}, + "t": 15.2, + "s": [416.115, 370.805, 0], + "to": [1.583, 0.217, 0], + "ti": [-1.452, -0.173, 0] + }, + { + "i": {"x": 0.833, "y": 0.842}, + "o": {"x": 0.167, "y": 0.172}, + "t": 16, + "s": [420.657, 371.382, 0], + "to": [1.452, 0.173, 0], + "ti": [-1.335, -0.139, 0] + }, + { + "i": {"x": 0.833, "y": 0.842}, + "o": {"x": 0.167, "y": 0.172}, + "t": 16.8, + "s": [424.829, 371.844, 0], + "to": [1.335, 0.139, 0], + "ti": [-1.229, -0.113, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.173}, + "t": 17.6, + "s": [428.668, 372.218, 0], + "to": [1.229, 0.113, 0], + "ti": [-1.131, -0.094, 0] + }, + { + "i": {"x": 0.833, "y": 0.842}, + "o": {"x": 0.167, "y": 0.172}, + "t": 18.4, + "s": [432.201, 372.525, 0], + "to": [1.131, 0.094, 0], + "ti": [-1.041, -0.08, 0] + }, + { + "i": {"x": 0.833, "y": 0.84}, + "o": {"x": 0.167, "y": 0.173}, + "t": 19.2, + "s": [435.454, 372.783, 0], + "to": [1.041, 0.08, 0], + "ti": [-0.958, -0.071, 0] + }, + { + "i": {"x": 0.833, "y": 0.84}, + "o": {"x": 0.167, "y": 0.173}, + "t": 20, + "s": [438.448, 373.008, 0], + "to": [0.958, 0.071, 0], + "ti": [-0.88, -0.066, 0] + }, + { + "i": {"x": 0.833, "y": 0.84}, + "o": {"x": 0.167, "y": 0.172}, + "t": 20.8, + "s": [441.201, 373.211, 0], + "to": [0.88, 0.066, 0], + "ti": [-0.807, -0.063, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.173}, + "t": 21.6, + "s": [443.727, 373.403, 0], + "to": [0.807, 0.063, 0], + "ti": [-0.738, -0.063, 0] + }, + { + "i": {"x": 0.833, "y": 0.843}, + "o": {"x": 0.167, "y": 0.172}, + "t": 22.4, + "s": [446.042, 373.591, 0], + "to": [0.738, 0.063, 0], + "ti": [-0.673, -0.065, 0] + }, + { + "i": {"x": 0.833, "y": 0.843}, + "o": {"x": 0.167, "y": 0.173}, + "t": 23.2, + "s": [448.156, 373.783, 0], + "to": [0.673, 0.065, 0], + "ti": [-0.611, -0.069, 0] + }, + { + "i": {"x": 0.833, "y": 0.843}, + "o": {"x": 0.167, "y": 0.173}, + "t": 24, + "s": [450.079, 373.983, 0], + "to": [0.611, 0.069, 0], + "ti": [-0.552, -0.073, 0] + }, + { + "i": {"x": 0.833, "y": 0.846}, + "o": {"x": 0.167, "y": 0.172}, + "t": 24.8, + "s": [451.822, 374.195, 0], + "to": [0.552, 0.073, 0], + "ti": [-0.495, -0.077, 0] + }, + { + "i": {"x": 0.833, "y": 0.846}, + "o": {"x": 0.167, "y": 0.171}, + "t": 25.6, + "s": [453.39, 374.419, 0], + "to": [0.495, 0.077, 0], + "ti": [-0.44, -0.082, 0] + }, + { + "i": {"x": 0.833, "y": 0.849}, + "o": {"x": 0.167, "y": 0.169}, + "t": 26.4, + "s": [454.792, 374.659, 0], + "to": [0.44, 0.082, 0], + "ti": [-0.387, -0.086, 0] + }, + { + "i": {"x": 0.833, "y": 0.852}, + "o": {"x": 0.167, "y": 0.168}, + "t": 27.2, + "s": [456.031, 374.911, 0], + "to": [0.387, 0.086, 0], + "ti": [-0.336, -0.09, 0] + }, + { + "i": {"x": 0.833, "y": 0.857}, + "o": {"x": 0.167, "y": 0.165}, + "t": 28, + "s": [457.115, 375.176, 0], + "to": [0.336, 0.09, 0], + "ti": [-0.286, -0.092, 0] + }, + { + "i": {"x": 0.833, "y": 0.864}, + "o": {"x": 0.167, "y": 0.16}, + "t": 28.8, + "s": [458.047, 375.45, 0], + "to": [0.286, 0.092, 0], + "ti": [-0.237, -0.093, 0] + }, + { + "i": {"x": 0.833, "y": 0.874}, + "o": {"x": 0.167, "y": 0.154}, + "t": 29.6, + "s": [458.831, 375.73, 0], + "to": [0.237, 0.093, 0], + "ti": [-0.19, -0.093, 0] + }, + { + "i": {"x": 0.833, "y": 0.886}, + "o": {"x": 0.167, "y": 0.142}, + "t": 30.4, + "s": [459.47, 376.01, 0], + "to": [0.19, 0.093, 0], + "ti": [-0.143, -0.09, 0] + }, + { + "i": {"x": 0.833, "y": 0.906}, + "o": {"x": 0.167, "y": 0.123}, + "t": 31.2, + "s": [459.968, 376.286, 0], + "to": [0.143, 0.09, 0], + "ti": [-0.097, -0.085, 0] + }, + { + "i": {"x": 0.833, "y": 0.936}, + "o": {"x": 0.167, "y": 0.088}, + "t": 32, + "s": [460.328, 376.55, 0], + "to": [0.097, 0.085, 0], + "ti": [-0.052, -0.077, 0] + }, + { + "i": {"x": 0.833, "y": 0.979}, + "o": {"x": 0.167, "y": 0.028}, + "t": 32.8, + "s": [460.55, 376.795, 0], + "to": [0.052, 0.077, 0], + "ti": [-0.007, -0.066, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [460.639, 377.012, 0], + "to": [0.007, 0.066, 0], + "ti": [0.032, -0.061, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [460.595, 377.193, 0], + "to": [-0.032, 0.061, 0], + "ti": [0.056, -0.069, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 35.2, + "s": [460.445, 377.377, 0], + "to": [-0.056, 0.069, 0], + "ti": [0.06, -0.083, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36, + "s": [460.259, 377.605, 0], + "to": [-0.06, 0.083, 0], + "ti": [0.055, -0.097, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36.8, + "s": [460.084, 377.877, 0], + "to": [-0.055, 0.097, 0], + "ti": [0.049, -0.11, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 37.6, + "s": [459.926, 378.189, 0], + "to": [-0.049, 0.11, 0], + "ti": [0.042, -0.121, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 38.4, + "s": [459.788, 378.537, 0], + "to": [-0.042, 0.121, 0], + "ti": [0.034, -0.13, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 39.2, + "s": [459.673, 378.915, 0], + "to": [-0.034, 0.13, 0], + "ti": [0.025, -0.138, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40, + "s": [459.585, 379.319, 0], + "to": [-0.025, 0.138, 0], + "ti": [0.015, -0.145, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40.8, + "s": [459.525, 379.745, 0], + "to": [-0.015, 0.145, 0], + "ti": [0.004, -0.15, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 41.6, + "s": [459.496, 380.189, 0], + "to": [-0.004, 0.15, 0], + "ti": [-0.006, -0.154, 0] + }, + { + "i": {"x": 0.833, "y": 0.999}, + "o": {"x": 0.167, "y": 0.001}, + "t": 42.4, + "s": [459.499, 380.647, 0], + "to": [0.006, 0.154, 0], + "ti": [-0.017, -0.157, 0] + }, + { + "i": {"x": 0.833, "y": 0.997}, + "o": {"x": 0.167, "y": 0.003}, + "t": 43.2, + "s": [459.535, 381.115, 0], + "to": [0.017, 0.157, 0], + "ti": [-0.028, -0.158, 0] + }, + { + "i": {"x": 0.833, "y": 0.993}, + "o": {"x": 0.167, "y": 0.007}, + "t": 44, + "s": [459.603, 381.589, 0], + "to": [0.028, 0.158, 0], + "ti": [-0.039, -0.159, 0] + }, + { + "i": {"x": 0.833, "y": 0.988}, + "o": {"x": 0.167, "y": 0.012}, + "t": 44.8, + "s": [459.705, 382.066, 0], + "to": [0.039, 0.159, 0], + "ti": [-0.05, -0.158, 0] + }, + { + "i": {"x": 0.833, "y": 0.982}, + "o": {"x": 0.167, "y": 0.018}, + "t": 45.6, + "s": [459.838, 382.542, 0], + "to": [0.05, 0.158, 0], + "ti": [-0.059, -0.156, 0] + }, + { + "i": {"x": 0.833, "y": 0.975}, + "o": {"x": 0.167, "y": 0.025}, + "t": 46.4, + "s": [460.002, 383.013, 0], + "to": [0.059, 0.156, 0], + "ti": [-0.032, -0.077, 0] + }, + {"t": 47.2001953125, "s": [460.195, 383.477, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.947, 0.942, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 3.2, + "s": [97.409, 66.055, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.753, 1.579, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.148, -0.189, 0]}, + "t": 4, + "s": [44.567, 76.147, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.004, 1.01, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.126, 0.073, 0]}, + "t": 4.8, + "s": [63.613, 73.054, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.971, 0.9, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.004, 0.009, 0]}, + "t": 5.6, + "s": [100.946, 97.634, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.792, 1.619, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.045, 0.494, 0]}, + "t": 6.4, + "s": [61.805, 70.187, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.951, 0.93, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.139, 0.073, 0]}, + "t": 7.2, + "s": [87.307, 64.612, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.68, 0.923, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.12, -0.436, 0]}, + "t": 8, + "s": [125.487, 111.62, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.883, -3.053, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.113, -0.938, 0]}, + "t": 8.8, + "s": [109.816, 104.073, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.123, 0.988, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.289, 0.085, 0]}, + "t": 9.6, + "s": [65.323, 104.689, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.897, 1.021, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.05, -0.013, 0]}, + "t": 10.4, + "s": [47.252, 134.038, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.754, 0.996, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.445, 0.017, 0]}, + "t": 11.2, + "s": [91.917, 108.765, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.965, 0.782, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.126, -0.004, 0]}, + "t": 12, + "s": [102.196, 140.322, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.598, 0.943, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.059, 0.135, 0]}, + "t": 12.8, + "s": [122.314, 110.374, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.954, 0.983, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.105, -0.179, 0]}, + "t": 13.6, + "s": [110.56, 62.157, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.992, 0.811, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.102, -0.022, 0]}, + "t": 14.4, + "s": [65.661, 77.47, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.964, 1.174, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.009, 0.149, 0]}, + "t": 15.2, + "s": [85.871, 65.321, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.389, 0.889, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.062, 0.056, 0]}, + "t": 16, + "s": [67.714, 49.917, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.983, 1.088, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.096, 0.335, 0]}, + "t": 16.8, + "s": [78.115, 97.527, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.976, 1.012, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.021, 0.043, 0]}, + "t": 17.6, + "s": [143.974, 113.298, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.021, 1.014, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.034, 0.01, 0]}, + "t": 18.4, + "s": [91.205, 80.878, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.004, 0.973, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.017, 0.012, 0]}, + "t": 19.2, + "s": [128.534, 117.961, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.938, 0.878, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.004, -0.04, 0]}, + "t": 20, + "s": [81.833, 74.831, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.701, 1.076, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.245, 0.261, 0]}, + "t": 20.8, + "s": [130.604, 103.951, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.848, 0.884, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.115, 0.04, 0]}, + "t": 21.6, + "s": [118.24, 117.585, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.924, 1.085, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.185, 0.297, 0]}, + "t": 22.4, + "s": [86.185, 91.54, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.239, 1.079, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.857, 0.042, 0]}, + "t": 23.2, + "s": [59.806, 81.372, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.06, 0.921, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.078, 0.041, 0]}, + "t": 24, + "s": [62.144, 101.879, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.904, 1.073, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.035, -1.454, 0]}, + "t": 24.8, + "s": [25.053, 61.948, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.113, 0.614, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.641, 0.039, 0]}, + "t": 25.6, + "s": [88.839, 64.113, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.878, 0.934, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.048, 0.106, 0]}, + "t": 26.4, + "s": [98.389, 60.046, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.973, 1.366, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.265, -0.316, 0]}, + "t": 27.2, + "s": [75.918, 45.28, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.487, 0.892, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.04, 0.068, 0]}, + "t": 28, + "s": [65.601, 48.361, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.02, 1.735, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.1, 0.366, 0]}, + "t": 28.8, + "s": [72.571, 31.73, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.839, 1.002, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.016, 0.075, 0]}, + "t": 29.6, + "s": [108.482, 26.833, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.939, 0.884, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.173, 0.002, 0]}, + "t": 30.4, + "s": [64.065, 74.946, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.807, 1.122, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.226, 0.296, 0]}, + "t": 31.2, + "s": [22.794, 25.686, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.039, 1.029, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.147, 0.05, 0]}, + "t": 32, + "s": [33.918, 6.407, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.952, 0.971, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.027, 0.021, 0]}, + "t": 32.8, + "s": [48.539, 53.893, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.843, 1.001, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.114, -0.046, 0]}, + "t": 33.6, + "s": [27.022, -9.839, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.415, 0.929, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.177, 0.001, 0]}, + "t": 34.4, + "s": [36.118, 31.361, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.042, 0.504, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.069, -0.476, 0]}, + "t": 35.2, + "s": [44.181, -10.557, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.979, 0.874, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.028, 0.1, 0]}, + "t": 36, + "s": [-4.037, -4.307, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.945, 0.884, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.027, 0.248, 0]}, + "t": 36.8, + "s": [68.255, 26.661, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.863, 0.961, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.164, 0.298, 0]}, + "t": 37.6, + "s": [13.766, 42.343, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.171, -1.299, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.213, -0.072, 0]}, + "t": 38.4, + "s": [32.121, 48.441, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.938, 0.952, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.056, 0.086, 0]}, + "t": 39.2, + "s": [43.941, 45.171, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.907, 0.82, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.238, -0.116, 0]}, + "t": 40, + "s": [7.866, -41.801, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.765, 0.908, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.767, 0.155, 0]}, + "t": 40.8, + "s": [17.231, -5.411, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.963, 0.772, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.087, 0.844, 0]}, + "t": 41.6, + "s": [18.373, 36.907, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.047, 0.926, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.066, 0.131, 0]}, + "t": 42.4, + "s": [41.417, 41.547, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.142, 1.256, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.03, -0.64, 0]}, + "t": 43.2, + "s": [28.526, 49.618, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.933, 1.594, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.053, 0.063, 0]}, + "t": 44, + "s": [48.627, 48.688, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.831, 0.986, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.344, 0.073, 0]}, + "t": 44.8, + "s": [-5.742, 52.477, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.959, 1.011, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.164, -0.017, 0]}, + "t": 45.6, + "s": [4.853, 21.683, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.082, 0.01, 0]}, + "t": 46.4, + "s": [15.758, 47.142, 100] + }, + {"t": 47.2001953125, "s": [10.26, 18.203, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": {"a": 0, "k": [10, 10], "ix": 2}, + "p": {"a": 0, "k": [0, 0], "ix": 3}, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [0.313725501299, 0.890196084976, 0.760784327984, 1], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Ellipse 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 3.2001953125, + "op": 48, + "st": 3.2001953125, + "bm": 0 + }, + { + "ddd": 0, + "ind": 27, + "ty": 4, + "nm": "Shape Layer 25", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 8, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 12, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 29.6, + "s": [100] + }, + {"t": 42.400390625, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 92, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 0.653}, + "o": {"x": 0.167, "y": 0.142}, + "t": 8, + "s": [269.753, 298.518, 0], + "to": [0.371, -0.157, 0], + "ti": [-1.794, 0.84, 0] + }, + { + "i": {"x": 0.833, "y": 0.808}, + "o": {"x": 0.167, "y": 0.086}, + "t": 8.8, + "s": [271.976, 297.574, 0], + "to": [1.794, -0.84, 0], + "ti": [-3.913, 2.158, 0] + }, + { + "i": {"x": 0.833, "y": 0.87}, + "o": {"x": 0.167, "y": 0.096}, + "t": 9.6, + "s": [280.516, 293.478, 0], + "to": [3.913, -2.158, 0], + "ti": [-5.148, 3.28, 0] + }, + { + "i": {"x": 0.833, "y": 0.893}, + "o": {"x": 0.167, "y": 0.108}, + "t": 10.4, + "s": [295.452, 284.625, 0], + "to": [5.148, -3.28, 0], + "ti": [-4.973, 3.376, 0] + }, + { + "i": {"x": 0.833, "y": 0.895}, + "o": {"x": 0.167, "y": 0.122}, + "t": 11.2, + "s": [311.406, 273.799, 0], + "to": [4.973, -3.376, 0], + "ti": [-4.286, 2.798, 0] + }, + { + "i": {"x": 0.833, "y": 0.89}, + "o": {"x": 0.167, "y": 0.132}, + "t": 12, + "s": [325.289, 264.369, 0], + "to": [4.286, -2.798, 0], + "ti": [-3.685, 2.155, 0] + }, + { + "i": {"x": 0.833, "y": 0.881}, + "o": {"x": 0.167, "y": 0.141}, + "t": 12.8, + "s": [337.123, 257.014, 0], + "to": [3.685, -2.155, 0], + "ti": [-3.222, 1.625, 0] + }, + { + "i": {"x": 0.833, "y": 0.872}, + "o": {"x": 0.167, "y": 0.149}, + "t": 13.6, + "s": [347.398, 251.439, 0], + "to": [3.222, -1.625, 0], + "ti": [-2.85, 1.213, 0] + }, + { + "i": {"x": 0.833, "y": 0.864}, + "o": {"x": 0.167, "y": 0.157}, + "t": 14.4, + "s": [356.453, 247.262, 0], + "to": [2.85, -1.213, 0], + "ti": [-2.541, 0.896, 0] + }, + { + "i": {"x": 0.833, "y": 0.857}, + "o": {"x": 0.167, "y": 0.163}, + "t": 15.2, + "s": [364.5, 244.163, 0], + "to": [2.541, -0.896, 0], + "ti": [-2.276, 0.656, 0] + }, + { + "i": {"x": 0.833, "y": 0.852}, + "o": {"x": 0.167, "y": 0.167}, + "t": 16, + "s": [371.696, 241.885, 0], + "to": [2.276, -0.656, 0], + "ti": [-2.047, 0.474, 0] + }, + { + "i": {"x": 0.833, "y": 0.848}, + "o": {"x": 0.167, "y": 0.169}, + "t": 16.8, + "s": [378.157, 240.228, 0], + "to": [2.047, -0.474, 0], + "ti": [-1.845, 0.337, 0] + }, + { + "i": {"x": 0.833, "y": 0.846}, + "o": {"x": 0.167, "y": 0.172}, + "t": 17.6, + "s": [383.976, 239.042, 0], + "to": [1.845, -0.337, 0], + "ti": [-1.666, 0.235, 0] + }, + { + "i": {"x": 0.833, "y": 0.844}, + "o": {"x": 0.167, "y": 0.174}, + "t": 18.4, + "s": [389.227, 238.206, 0], + "to": [1.666, -0.235, 0], + "ti": [-1.505, 0.161, 0] + }, + { + "i": {"x": 0.833, "y": 0.843}, + "o": {"x": 0.167, "y": 0.174}, + "t": 19.2, + "s": [393.971, 237.63, 0], + "to": [1.505, -0.161, 0], + "ti": [-1.361, 0.108, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.176}, + "t": 20, + "s": [398.259, 237.241, 0], + "to": [1.361, -0.108, 0], + "ti": [-1.229, 0.074, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.176}, + "t": 20.8, + "s": [402.134, 236.98, 0], + "to": [1.229, -0.074, 0], + "ti": [-1.111, 0.051, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.176}, + "t": 21.6, + "s": [405.636, 236.799, 0], + "to": [1.111, -0.051, 0], + "ti": [-1.01, 0.021, 0] + }, + { + "i": {"x": 0.833, "y": 0.84}, + "o": {"x": 0.167, "y": 0.175}, + "t": 22.4, + "s": [408.801, 236.672, 0], + "to": [1.01, -0.021, 0], + "ti": [-0.926, -0.021, 0] + }, + { + "i": {"x": 0.833, "y": 0.84}, + "o": {"x": 0.167, "y": 0.174}, + "t": 23.2, + "s": [411.696, 236.673, 0], + "to": [0.926, 0.021, 0], + "ti": [-0.853, -0.06, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.171}, + "t": 24, + "s": [414.357, 236.801, 0], + "to": [0.853, 0.06, 0], + "ti": [-0.787, -0.092, 0] + }, + { + "i": {"x": 0.833, "y": 0.843}, + "o": {"x": 0.167, "y": 0.169}, + "t": 24.8, + "s": [416.812, 237.033, 0], + "to": [0.787, 0.092, 0], + "ti": [-0.729, -0.118, 0] + }, + { + "i": {"x": 0.833, "y": 0.844}, + "o": {"x": 0.167, "y": 0.167}, + "t": 25.6, + "s": [419.082, 237.352, 0], + "to": [0.729, 0.118, 0], + "ti": [-0.677, -0.139, 0] + }, + { + "i": {"x": 0.833, "y": 0.846}, + "o": {"x": 0.167, "y": 0.164}, + "t": 26.4, + "s": [421.188, 237.741, 0], + "to": [0.677, 0.139, 0], + "ti": [-0.631, -0.156, 0] + }, + { + "i": {"x": 0.833, "y": 0.849}, + "o": {"x": 0.167, "y": 0.16}, + "t": 27.2, + "s": [423.146, 238.187, 0], + "to": [0.631, 0.156, 0], + "ti": [-0.589, -0.169, 0] + }, + { + "i": {"x": 0.833, "y": 0.852}, + "o": {"x": 0.167, "y": 0.156}, + "t": 28, + "s": [424.973, 238.678, 0], + "to": [0.589, 0.169, 0], + "ti": [-0.552, -0.179, 0] + }, + { + "i": {"x": 0.833, "y": 0.855}, + "o": {"x": 0.167, "y": 0.153}, + "t": 28.8, + "s": [426.682, 239.204, 0], + "to": [0.552, 0.179, 0], + "ti": [-0.518, -0.186, 0] + }, + { + "i": {"x": 0.833, "y": 0.857}, + "o": {"x": 0.167, "y": 0.15}, + "t": 29.6, + "s": [428.285, 239.754, 0], + "to": [0.518, 0.186, 0], + "ti": [-0.488, -0.19, 0] + }, + { + "i": {"x": 0.833, "y": 0.86}, + "o": {"x": 0.167, "y": 0.146}, + "t": 30.4, + "s": [429.793, 240.32, 0], + "to": [0.488, 0.19, 0], + "ti": [-0.46, -0.192, 0] + }, + { + "i": {"x": 0.833, "y": 0.862}, + "o": {"x": 0.167, "y": 0.144}, + "t": 31.2, + "s": [431.212, 240.895, 0], + "to": [0.46, 0.192, 0], + "ti": [-0.433, -0.191, 0] + }, + { + "i": {"x": 0.833, "y": 0.865}, + "o": {"x": 0.167, "y": 0.142}, + "t": 32, + "s": [432.55, 241.471, 0], + "to": [0.433, 0.191, 0], + "ti": [-0.408, -0.188, 0] + }, + { + "i": {"x": 0.833, "y": 0.867}, + "o": {"x": 0.167, "y": 0.14}, + "t": 32.8, + "s": [433.811, 242.041, 0], + "to": [0.408, 0.188, 0], + "ti": [-0.384, -0.184, 0] + }, + { + "i": {"x": 0.833, "y": 0.869}, + "o": {"x": 0.167, "y": 0.139}, + "t": 33.6, + "s": [434.998, 242.6, 0], + "to": [0.384, 0.184, 0], + "ti": [-0.36, -0.177, 0] + }, + { + "i": {"x": 0.833, "y": 0.871}, + "o": {"x": 0.167, "y": 0.138}, + "t": 34.4, + "s": [436.114, 243.143, 0], + "to": [0.36, 0.177, 0], + "ti": [-0.337, -0.169, 0] + }, + { + "i": {"x": 0.833, "y": 0.871}, + "o": {"x": 0.167, "y": 0.137}, + "t": 35.2, + "s": [437.16, 243.663, 0], + "to": [0.337, 0.169, 0], + "ti": [-0.314, -0.159, 0] + }, + { + "i": {"x": 0.833, "y": 0.873}, + "o": {"x": 0.167, "y": 0.137}, + "t": 36, + "s": [438.136, 244.156, 0], + "to": [0.314, 0.159, 0], + "ti": [-0.29, -0.148, 0] + }, + { + "i": {"x": 0.833, "y": 0.874}, + "o": {"x": 0.167, "y": 0.138}, + "t": 36.8, + "s": [439.041, 244.617, 0], + "to": [0.29, 0.148, 0], + "ti": [-0.265, -0.135, 0] + }, + { + "i": {"x": 0.833, "y": 0.874}, + "o": {"x": 0.167, "y": 0.139}, + "t": 37.6, + "s": [439.873, 245.043, 0], + "to": [0.265, 0.135, 0], + "ti": [-0.239, -0.121, 0] + }, + { + "i": {"x": 0.833, "y": 0.876}, + "o": {"x": 0.167, "y": 0.141}, + "t": 38.4, + "s": [440.629, 245.429, 0], + "to": [0.239, 0.121, 0], + "ti": [-0.211, -0.106, 0] + }, + { + "i": {"x": 0.833, "y": 0.874}, + "o": {"x": 0.167, "y": 0.143}, + "t": 39.2, + "s": [441.306, 245.771, 0], + "to": [0.211, 0.106, 0], + "ti": [-0.188, -0.091, 0] + }, + { + "i": {"x": 0.833, "y": 0.868}, + "o": {"x": 0.167, "y": 0.145}, + "t": 40, + "s": [441.897, 246.067, 0], + "to": [0.188, 0.091, 0], + "ti": [-0.176, -0.076, 0] + }, + { + "i": {"x": 0.833, "y": 0.863}, + "o": {"x": 0.167, "y": 0.148}, + "t": 40.8, + "s": [442.436, 246.318, 0], + "to": [0.176, 0.076, 0], + "ti": [-0.167, -0.062, 0] + }, + { + "i": {"x": 0.833, "y": 0.859}, + "o": {"x": 0.167, "y": 0.157}, + "t": 41.6, + "s": [442.952, 246.526, 0], + "to": [0.167, 0.062, 0], + "ti": [-0.154, -0.046, 0] + }, + { + "i": {"x": 0.833, "y": 0.855}, + "o": {"x": 0.167, "y": 0.166}, + "t": 42.4, + "s": [443.435, 246.688, 0], + "to": [0.154, 0.046, 0], + "ti": [-0.137, -0.029, 0] + }, + { + "i": {"x": 0.833, "y": 0.853}, + "o": {"x": 0.167, "y": 0.177}, + "t": 43.2, + "s": [443.874, 246.8, 0], + "to": [0.137, 0.029, 0], + "ti": [-0.117, -0.011, 0] + }, + { + "i": {"x": 0.833, "y": 0.853}, + "o": {"x": 0.167, "y": 0.186}, + "t": 44, + "s": [444.258, 246.86, 0], + "to": [0.117, 0.011, 0], + "ti": [-0.092, 0.008, 0] + }, + { + "i": {"x": 0.833, "y": 0.858}, + "o": {"x": 0.167, "y": 0.182}, + "t": 44.8, + "s": [444.574, 246.866, 0], + "to": [0.092, -0.008, 0], + "ti": [-0.065, 0.028, 0] + }, + { + "i": {"x": 0.833, "y": 0.877}, + "o": {"x": 0.167, "y": 0.12}, + "t": 45.6, + "s": [444.81, 246.814, 0], + "to": [0.065, -0.028, 0], + "ti": [-0.052, 0.051, 0] + }, + { + "i": {"x": 0.833, "y": 0.932}, + "o": {"x": 0.167, "y": 0.061}, + "t": 46.4, + "s": [444.965, 246.7, 0], + "to": [0.052, -0.051, 0], + "ti": [-0.027, 0.032, 0] + }, + {"t": 47.2001953125, "s": [445.124, 246.509, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.872, 1.012, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 8, + "s": [110.669, 116.358, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.04, 0.96, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.239, 0.011, 0]}, + "t": 8.8, + "s": [59.779, 98.507, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.934, 1.168, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.027, -0.078, 0]}, + "t": 9.6, + "s": [32.558, 118.992, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.283, 0.983, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.327, 0.056, 0]}, + "t": 10.4, + "s": [72.99, 108.43, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.904, 0.749, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.064, -0.022, 0]}, + "t": 11.2, + "s": [64.776, 140.246, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.471, 0.987, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.643, 0.125, 0]}, + "t": 12, + "s": [100.849, 115.061, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.917, 0.951, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.071, -0.015, 0]}, + "t": 12.8, + "s": [106.224, 64.521, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [7.846, 0.661, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-10.264, -0.119, 0]}, + "t": 13.6, + "s": [70.46, 107.342, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.07, 0.987, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.082, 0.111, 0]}, + "t": 14.4, + "s": [70.749, 89.722, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.822, 0.875, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.038, -0.015, 0]}, + "t": 15.2, + "s": [46.798, 35.679, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.002, 0.943, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.157, 0.249, 0]}, + "t": 16, + "s": [90.882, 81.249, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.942, 1.169, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.002, -0.177, 0]}, + "t": 16.8, + "s": [140.894, 104.127, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.056, 1.071, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.196, 0.056, 0]}, + "t": 17.6, + "s": [89.564, 96.8, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.972, 0.871, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.034, 0.038, 0]}, + "t": 18.4, + "s": [104.901, 119.028, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.839, 1.124, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.041, 0.236, 0]}, + "t": 19.2, + "s": [79.173, 77.868, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.075, 0.964, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.172, 0.05, 0]}, + "t": 20, + "s": [96.359, 55.376, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.864, 0.984, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.04, -0.064, 0]}, + "t": 20.8, + "s": [112.425, 111.326, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.964, 0.96, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.216, -0.02, 0]}, + "t": 21.6, + "s": [81.872, 79.606, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.136, 0.906, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.063, -0.076, 0]}, + "t": 22.4, + "s": [62.674, 105.212, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.04, 0.329, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.052, 0.758, 0]}, + "t": 23.2, + "s": [73.611, 91.797, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.897, 0.991, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.027, 0.095, 0]}, + "t": 24, + "s": [44.883, 90.141, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.864, 1.007, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.445, -0.009, 0]}, + "t": 24.8, + "s": [87.448, 78.456, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.687, 0.817, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.216, 0.007, 0]}, + "t": 25.6, + "s": [97.261, 88.946, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.172, 0.78, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.114, 0.153, 0]}, + "t": 26.4, + "s": [103.41, 77.55, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.025, 0.995, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.056, 0.134, 0]}, + "t": 27.2, + "s": [120.354, 63.853, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.939, 0.776, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.019, -0.005, 0]}, + "t": 28, + "s": [68.478, 41.315, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.781, 1.002, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.226, 0.133, 0]}, + "t": 28.8, + "s": [135.85, 62.489, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.836, 0.898, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.135, 0.002, 0]}, + "t": 29.6, + "s": [117.729, 98.108, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.955, 0.732, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.17, 0.45, 0]}, + "t": 30.4, + "s": [88.261, 61.749, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.161, 0.879, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.097, 0.121, 0]}, + "t": 31.2, + "s": [59.775, 53.492, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.92, 1.01, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.055, 0.268, 0]}, + "t": 32, + "s": [72.912, 35.197, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.014, 1.011, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.932, 0.009, 0]}, + "t": 32.8, + "s": [34.35, 26.941, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.166, 0.799, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.091, 0.01, 0]}, + "t": 33.6, + "s": [35.945, 36.212, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.01, 1.008, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.055, 0.142, 0]}, + "t": 34.4, + "s": [53.22, 25.739, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.967, 0.804, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.009, 0.007, 0]}, + "t": 35.2, + "s": [1.613, 10.927, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.916, 0.919, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.054, 0.145, 0]}, + "t": 36, + "s": [59.191, 27.12, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [32.326, 1.954, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [28.075, -2.646, 0]}, + "t": 36.8, + "s": [24.376, 49.1, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.963, 1.606, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.083, 0.077, 0]}, + "t": 37.6, + "s": [24.272, 48.429, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.911, 0.914, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.066, 0.073, 0]}, + "t": 38.4, + "s": [63.337, 56.778, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.402, 1.919, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.325, 2.782, 0]}, + "t": 39.2, + "s": [41.555, -12.234, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.891, 0.867, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.089, 0.076, 0]}, + "t": 40, + "s": [40.094, -14.365, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.348, 0.976, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.357, 0.224, 0]}, + "t": 40.8, + "s": [16.969, 11.25, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.893, 1.059, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.067, -0.033, 0]}, + "t": 41.6, + "s": [9.934, 26.464, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.223, 1.041, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.372, 0.034, 0]}, + "t": 42.4, + "s": [46.338, 15.586, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.949, 0.977, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.061, 0.028, 0]}, + "t": 43.2, + "s": [56.833, 34.129, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.872, 0.807, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.133, -0.032, 0]}, + "t": 44, + "s": [18.206, 6.413, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.098, 0.917, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.239, 0.147, 0]}, + "t": 44.8, + "s": [33.108, 26.401, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.855, -124.15, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.045, -45.991, 0]}, + "t": 45.6, + "s": [41.083, 52.674, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.195, 0.083, 0]}, + "t": 46.4, + "s": [23.746, 52.627, 100] + }, + {"t": 47.2001953125, "s": [10.82, -18.691, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": {"a": 0, "k": [10, 10], "ix": 2}, + "p": {"a": 0, "k": [0, 0], "ix": 3}, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [1, 0.101960785687, 0.380392163992, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Ellipse 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 8, + "op": 48, + "st": 8, + "bm": 0 + }, + { + "ddd": 0, + "ind": 28, + "ty": 4, + "nm": "Shape Layer 24", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 5.6, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 9.6, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 27.2, + "s": [100] + }, + {"t": 40, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 92, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 5.6, + "s": [265.04, 301.431, 0], + "to": [-0.341, -0.143, 0], + "ti": [1.527, 0.877, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 6.4, + "s": [262.993, 300.574, 0], + "to": [-1.527, -0.877, 0], + "ti": [3.095, 2.404, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 7.2, + "s": [255.881, 296.17, 0], + "to": [-3.095, -2.404, 0], + "ti": [3.636, 3.902, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8, + "s": [244.425, 286.149, 0], + "to": [-3.636, -3.902, 0], + "ti": [2.978, 4.369, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [234.064, 272.758, 0], + "to": [-2.978, -4.369, 0], + "ti": [2.214, 3.975, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [226.554, 259.936, 0], + "to": [-2.214, -3.975, 0], + "ti": [1.769, 3.38, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 10.4, + "s": [220.781, 248.906, 0], + "to": [-1.769, -3.38, 0], + "ti": [1.52, 2.839, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 11.2, + "s": [215.943, 239.657, 0], + "to": [-1.52, -2.839, 0], + "ti": [1.364, 2.397, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12, + "s": [211.658, 231.874, 0], + "to": [-1.364, -2.397, 0], + "ti": [1.247, 2.04, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12.8, + "s": [207.761, 225.273, 0], + "to": [-1.247, -2.04, 0], + "ti": [1.147, 1.749, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 13.6, + "s": [204.179, 219.632, 0], + "to": [-1.147, -1.749, 0], + "ti": [1.054, 1.508, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 14.4, + "s": [200.881, 214.781, 0], + "to": [-1.054, -1.508, 0], + "ti": [0.966, 1.308, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 15.2, + "s": [197.852, 210.583, 0], + "to": [-0.966, -1.308, 0], + "ti": [0.881, 1.139, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16, + "s": [195.083, 206.935, 0], + "to": [-0.881, -1.139, 0], + "ti": [0.798, 0.996, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16.8, + "s": [192.565, 203.748, 0], + "to": [-0.798, -0.996, 0], + "ti": [0.718, 0.875, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 17.6, + "s": [190.293, 200.956, 0], + "to": [-0.718, -0.875, 0], + "ti": [0.64, 0.771, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [188.258, 198.5, 0], + "to": [-0.64, -0.771, 0], + "ti": [0.565, 0.681, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [186.453, 196.332, 0], + "to": [-0.565, -0.681, 0], + "ti": [0.494, 0.604, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20, + "s": [184.867, 194.413, 0], + "to": [-0.494, -0.604, 0], + "ti": [0.425, 0.537, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [183.491, 192.71, 0], + "to": [-0.425, -0.537, 0], + "ti": [0.361, 0.479, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 21.6, + "s": [182.314, 191.193, 0], + "to": [-0.361, -0.479, 0], + "ti": [0.301, 0.428, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 22.4, + "s": [181.325, 189.838, 0], + "to": [-0.301, -0.428, 0], + "ti": [0.244, 0.384, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 23.2, + "s": [180.511, 188.625, 0], + "to": [-0.244, -0.384, 0], + "ti": [0.192, 0.346, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24, + "s": [179.859, 187.534, 0], + "to": [-0.192, -0.346, 0], + "ti": [0.145, 0.312, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24.8, + "s": [179.357, 186.551, 0], + "to": [-0.145, -0.312, 0], + "ti": [0.103, 0.284, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 25.6, + "s": [178.99, 185.66, 0], + "to": [-0.103, -0.284, 0], + "ti": [0.066, 0.259, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26.4, + "s": [178.741, 184.85, 0], + "to": [-0.066, -0.259, 0], + "ti": [0.034, 0.238, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 27.2, + "s": [178.596, 184.107, 0], + "to": [-0.034, -0.238, 0], + "ti": [0.008, 0.219, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28, + "s": [178.536, 183.424, 0], + "to": [-0.008, -0.219, 0], + "ti": [-0.011, 0.204, 0] + }, + { + "i": {"x": 0.833, "y": 0.998}, + "o": {"x": 0.167, "y": 0.002}, + "t": 28.8, + "s": [178.545, 182.791, 0], + "to": [0.011, -0.204, 0], + "ti": [-0.025, 0.191, 0] + }, + { + "i": {"x": 0.833, "y": 0.996}, + "o": {"x": 0.167, "y": 0.005}, + "t": 29.6, + "s": [178.604, 182.2, 0], + "to": [0.025, -0.191, 0], + "ti": [-0.033, 0.18, 0] + }, + { + "i": {"x": 0.833, "y": 0.994}, + "o": {"x": 0.167, "y": 0.006}, + "t": 30.4, + "s": [178.696, 181.645, 0], + "to": [0.033, -0.18, 0], + "ti": [-0.033, 0.171, 0] + }, + { + "i": {"x": 0.833, "y": 0.994}, + "o": {"x": 0.167, "y": 0.006}, + "t": 31.2, + "s": [178.8, 181.121, 0], + "to": [0.033, -0.171, 0], + "ti": [-0.027, 0.163, 0] + }, + { + "i": {"x": 0.833, "y": 0.997}, + "o": {"x": 0.167, "y": 0.003}, + "t": 32, + "s": [178.897, 180.622, 0], + "to": [0.027, -0.163, 0], + "ti": [-0.014, 0.157, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [178.964, 180.143, 0], + "to": [0.014, -0.157, 0], + "ti": [-0.002, 0.154, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [178.981, 179.68, 0], + "to": [0.002, -0.154, 0], + "ti": [-0.011, 0.158, 0] + }, + { + "i": {"x": 0.833, "y": 0.997}, + "o": {"x": 0.167, "y": 0.003}, + "t": 34.4, + "s": [178.978, 179.217, 0], + "to": [0.011, -0.158, 0], + "ti": [-0.033, 0.162, 0] + }, + { + "i": {"x": 0.833, "y": 0.989}, + "o": {"x": 0.167, "y": 0.011}, + "t": 35.2, + "s": [179.048, 178.732, 0], + "to": [0.033, -0.162, 0], + "ti": [-0.051, 0.161, 0] + }, + { + "i": {"x": 0.833, "y": 0.98}, + "o": {"x": 0.167, "y": 0.02}, + "t": 36, + "s": [179.179, 178.243, 0], + "to": [0.051, -0.161, 0], + "ti": [-0.064, 0.155, 0] + }, + { + "i": {"x": 0.833, "y": 0.972}, + "o": {"x": 0.167, "y": 0.03}, + "t": 36.8, + "s": [179.355, 177.765, 0], + "to": [0.064, -0.155, 0], + "ti": [-0.069, 0.148, 0] + }, + { + "i": {"x": 0.833, "y": 0.971}, + "o": {"x": 0.167, "y": 0.031}, + "t": 37.6, + "s": [179.564, 177.312, 0], + "to": [0.069, -0.148, 0], + "ti": [-0.061, 0.142, 0] + }, + { + "i": {"x": 0.833, "y": 0.98}, + "o": {"x": 0.167, "y": 0.022}, + "t": 38.4, + "s": [179.767, 176.879, 0], + "to": [0.061, -0.142, 0], + "ti": [-0.046, 0.136, 0] + }, + { + "i": {"x": 0.833, "y": 0.988}, + "o": {"x": 0.167, "y": 0.013}, + "t": 39.2, + "s": [179.929, 176.457, 0], + "to": [0.046, -0.136, 0], + "ti": [-0.028, 0.126, 0] + }, + { + "i": {"x": 0.833, "y": 0.996}, + "o": {"x": 0.167, "y": 0.004}, + "t": 40, + "s": [180.041, 176.061, 0], + "to": [0.028, -0.126, 0], + "ti": [-0.009, 0.113, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40.8, + "s": [180.098, 175.7, 0], + "to": [0.009, -0.113, 0], + "ti": [0.012, 0.096, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 41.6, + "s": [180.095, 175.385, 0], + "to": [-0.012, -0.096, 0], + "ti": [0.034, 0.077, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 42.4, + "s": [180.027, 175.124, 0], + "to": [-0.034, -0.077, 0], + "ti": [0.057, 0.055, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 43.2, + "s": [179.891, 174.924, 0], + "to": [-0.057, -0.055, 0], + "ti": [0.08, 0.032, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44, + "s": [179.687, 174.792, 0], + "to": [-0.08, -0.032, 0], + "ti": [0.103, 0.008, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44.8, + "s": [179.413, 174.732, 0], + "to": [-0.103, -0.008, 0], + "ti": [0.125, -0.018, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 45.6, + "s": [179.07, 174.747, 0], + "to": [-0.125, 0.018, 0], + "ti": [0.147, -0.043, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 46.4, + "s": [178.66, 174.838, 0], + "to": [-0.147, 0.043, 0], + "ti": [0.079, -0.028, 0] + }, + {"t": 47.2001953125, "s": [178.187, 175.006, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.857, 0.976, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 5.6, + "s": [67.557, 101.258, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.965, 0.856, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.076, -0.033, 0]}, + "t": 6.4, + "s": [62.081, 60.567, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.899, 1, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.062, 0.197, 0]}, + "t": 7.2, + "s": [123.801, 89.604, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.652, 0.91, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.485, 0, 0]}, + "t": 8, + "s": [88.344, 110.822, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.902, 1.594, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.11, 1.18, 0]}, + "t": 8.8, + "s": [80.981, 89.674, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.494, 0.831, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.57, 0.073, 0]}, + "t": 9.6, + "s": [57.576, 88.067, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.815, 1.117, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.071, 0.164, 0]}, + "t": 10.4, + "s": [53.56, 101.12, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.035, 0.99, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.152, 0.049, 0]}, + "t": 11.2, + "s": [81.37, 114.583, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.939, 0.9, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.025, -0.011, 0]}, + "t": 12, + "s": [115.142, 82.186, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.154, 1.445, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.235, 0.491, 0]}, + "t": 12.8, + "s": [67.083, 110.768, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.037, 0.85, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.054, 0.07, 0]}, + "t": 13.6, + "s": [79.677, 116.611, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.885, 1.062, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.026, 0.187, 0]}, + "t": 14.4, + "s": [43.885, 79.546, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.972, 0.909, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.301, 0.035, 0]}, + "t": 15.2, + "s": [95.707, 49.721, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.783, 0.41, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.043, 0.938, 0]}, + "t": 16, + "s": [115.579, 101.629, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.957, 0.995, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.135, 0.097, 0]}, + "t": 16.8, + "s": [102.439, 106.687, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.875, 0.793, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.087, -0.005, 0]}, + "t": 17.6, + "s": [81.407, 137.444, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.844, 0.981, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.25, 0.14, 0]}, + "t": 18.4, + "s": [91.687, 108.575, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.4, 1.01, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.178, -0.024, 0]}, + "t": 19.2, + "s": [96.813, 65.889, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.924, 1.015, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.069, 0.009, 0]}, + "t": 20, + "s": [101.302, 98.9, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.186, 0.906, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.902, 0.013, 0]}, + "t": 20.8, + "s": [75.267, 62.121, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.894, 0.887, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.058, 0.725, 0]}, + "t": 21.6, + "s": [77.47, 105.409, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.167, 2.294, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.393, 0.315, 0]}, + "t": 22.4, + "s": [70.35, 111.04, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.394, 0.91, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.056, 0.078, 0]}, + "t": 23.2, + "s": [68.432, 113.069, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.999, 1.578, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.097, 1.095, 0]}, + "t": 24, + "s": [74.202, 79.548, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.979, 0.978, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.001, 0.073, 0]}, + "t": 24.8, + "s": [110.376, 76.788, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.071, 0.748, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.029, -0.029, 0]}, + "t": 25.6, + "s": [74.587, 98.699, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.005, 0.895, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.038, 0.125, 0]}, + "t": 26.4, + "s": [101.235, 82.443, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.897, 1.096, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.004, 0.401, 0]}, + "t": 27.2, + "s": [51.784, 49.555, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.916, 0.982, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.43, 0.045, 0]}, + "t": 28, + "s": [103.982, 40.922, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [22.31, 1.143, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [6.075, -0.023, 0]}, + "t": 28.8, + "s": [116.519, 59.525, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.868, 1.051, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.083, 0.053, 0]}, + "t": 29.6, + "s": [116.693, 44.996, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.915, 0.931, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.226, 0.031, 0]}, + "t": 30.4, + "s": [71.936, 84.414, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.19, 1.045, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [4.524, -0.385, 0]}, + "t": 31.2, + "s": [45.732, 21.041, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.945, 0.893, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.09, 0.029, 0]}, + "t": 32, + "s": [45.24, 32.32, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.147, 0.824, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.16, 0.379, 0]}, + "t": 32.8, + "s": [38.713, 14.915, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.02, 0.834, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.078, 0.158, 0]}, + "t": 33.6, + "s": [40.945, 10.011, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.96, 1.294, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.016, 0.167, 0]}, + "t": 34.4, + "s": [7.998, 4.532, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.811, 0.925, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.078, 0.065, 0]}, + "t": 35.2, + "s": [48.948, -0.907, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.977, 2.089, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.149, -0.765, 0]}, + "t": 36, + "s": [27.778, 23.742, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.789, 1.036, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.033, 0.077, 0]}, + "t": 36.8, + "s": [0.947, 21.32, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.934, 0.902, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.138, 0.025, 0]}, + "t": 37.6, + "s": [20.246, 55.394, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.839, 1.071, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.317, 0.568, 0]}, + "t": 38.4, + "s": [49.89, 6.617, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.533, 0.903, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.173, 0.038, 0]}, + "t": 39.2, + "s": [43.72, -1.776, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.939, 1.723, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.101, 0.578, 0]}, + "t": 40, + "s": [37.975, 13.785, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.517, 1.043, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.234, 0.075, 0]}, + "t": 40.8, + "s": [11.499, 16.406, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.963, 0.978, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.101, 0.028, 0]}, + "t": 41.6, + "s": [18.462, -8.949, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.022, 0.904, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.068, -0.031, 0]}, + "t": 42.4, + "s": [51.821, 29.36, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.996, 1.698, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.017, 0.617, 0]}, + "t": 43.2, + "s": [33.392, 1.359, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.888, 0.865, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.004, 0.074, 0]}, + "t": 44, + "s": [56.645, -3.016, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.486, 0.985, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.324, 0.219, 0]}, + "t": 44.8, + "s": [34.461, 37.994, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.009, 0.874, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.099, -0.018, 0]}, + "t": 45.6, + "s": [26.772, 63.226, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.008, 0.247, 0]}, + "t": 46.4, + "s": [-12.998, 42.488, 100] + }, + {"t": 47.2001953125, "s": [31.14, 31.954, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": {"a": 0, "k": [10, 10], "ix": 2}, + "p": {"a": 0, "k": [0, 0], "ix": 3}, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [0.313725501299, 0.890196084976, 0.760784327984, 1], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Ellipse 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 5.599609375, + "op": 48, + "st": 5.599609375, + "bm": 0 + }, + { + "ddd": 0, + "ind": 29, + "ty": 4, + "nm": "Shape Layer 23", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 4, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 8, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 25.6, + "s": [100] + }, + {"t": 38.400390625, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 92, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 4, + "s": [261.789, 302.009, 0], + "to": [-0.181, -0.464, 0], + "ti": [0.71, 2.293, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 4.8, + "s": [260.702, 299.226, 0], + "to": [-0.71, -2.293, 0], + "ti": [1.003, 5.268, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 5.6, + "s": [257.531, 288.249, 0], + "to": [-1.003, -5.268, 0], + "ti": [0.104, 7.272, 0] + }, + { + "i": {"x": 0.833, "y": 0.999}, + "o": {"x": 0.167, "y": 0.001}, + "t": 6.4, + "s": [254.686, 267.621, 0], + "to": [-0.104, -7.272, 0], + "ti": [-1.513, 7.003, 0] + }, + { + "i": {"x": 0.833, "y": 0.982}, + "o": {"x": 0.167, "y": 0.021}, + "t": 7.2, + "s": [256.909, 244.618, 0], + "to": [1.513, -7.003, 0], + "ti": [-2.58, 5.598, 0] + }, + { + "i": {"x": 0.833, "y": 0.96}, + "o": {"x": 0.167, "y": 0.047}, + "t": 8, + "s": [263.763, 225.603, 0], + "to": [2.58, -5.598, 0], + "ti": [-2.89, 4.322, 0] + }, + { + "i": {"x": 0.833, "y": 0.943}, + "o": {"x": 0.167, "y": 0.068}, + "t": 8.8, + "s": [272.387, 211.032, 0], + "to": [2.89, -4.322, 0], + "ti": [-2.817, 3.434, 0] + }, + { + "i": {"x": 0.833, "y": 0.932}, + "o": {"x": 0.167, "y": 0.079}, + "t": 9.6, + "s": [281.103, 199.67, 0], + "to": [2.817, -3.434, 0], + "ti": [-2.604, 2.843, 0] + }, + { + "i": {"x": 0.833, "y": 0.926}, + "o": {"x": 0.167, "y": 0.085}, + "t": 10.4, + "s": [289.287, 190.426, 0], + "to": [2.604, -2.843, 0], + "ti": [-2.352, 2.444, 0] + }, + { + "i": {"x": 0.833, "y": 0.923}, + "o": {"x": 0.167, "y": 0.087}, + "t": 11.2, + "s": [296.729, 182.612, 0], + "to": [2.352, -2.444, 0], + "ti": [-2.098, 2.172, 0] + }, + { + "i": {"x": 0.833, "y": 0.925}, + "o": {"x": 0.167, "y": 0.084}, + "t": 12, + "s": [303.402, 175.762, 0], + "to": [2.098, -2.172, 0], + "ti": [-1.847, 1.982, 0] + }, + { + "i": {"x": 0.833, "y": 0.928}, + "o": {"x": 0.167, "y": 0.079}, + "t": 12.8, + "s": [309.316, 169.581, 0], + "to": [1.847, -1.982, 0], + "ti": [-1.599, 1.847, 0] + }, + { + "i": {"x": 0.833, "y": 0.936}, + "o": {"x": 0.167, "y": 0.071}, + "t": 13.6, + "s": [314.483, 163.871, 0], + "to": [1.599, -1.847, 0], + "ti": [-1.351, 1.749, 0] + }, + { + "i": {"x": 0.833, "y": 0.946}, + "o": {"x": 0.167, "y": 0.06}, + "t": 14.4, + "s": [318.909, 158.499, 0], + "to": [1.351, -1.749, 0], + "ti": [-1.1, 1.67, 0] + }, + { + "i": {"x": 0.833, "y": 0.959}, + "o": {"x": 0.167, "y": 0.046}, + "t": 15.2, + "s": [322.589, 153.379, 0], + "to": [1.1, -1.67, 0], + "ti": [-0.847, 1.597, 0] + }, + { + "i": {"x": 0.833, "y": 0.972}, + "o": {"x": 0.167, "y": 0.031}, + "t": 16, + "s": [325.509, 148.477, 0], + "to": [0.847, -1.597, 0], + "ti": [-0.598, 1.514, 0] + }, + { + "i": {"x": 0.833, "y": 0.985}, + "o": {"x": 0.167, "y": 0.017}, + "t": 16.8, + "s": [327.669, 143.798, 0], + "to": [0.598, -1.514, 0], + "ti": [-0.368, 1.415, 0] + }, + { + "i": {"x": 0.833, "y": 0.994}, + "o": {"x": 0.167, "y": 0.006}, + "t": 17.6, + "s": [329.098, 139.39, 0], + "to": [0.368, -1.415, 0], + "ti": [-0.17, 1.301, 0] + }, + { + "i": {"x": 0.833, "y": 0.999}, + "o": {"x": 0.167, "y": 0.001}, + "t": 18.4, + "s": [329.877, 135.307, 0], + "to": [0.17, -1.301, 0], + "ti": [-0.012, 1.178, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [330.12, 131.586, 0], + "to": [0.012, -1.178, 0], + "ti": [0.108, 1.057, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20, + "s": [329.95, 128.236, 0], + "to": [-0.108, -1.057, 0], + "ti": [0.197, 0.942, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [329.473, 125.245, 0], + "to": [-0.197, -0.942, 0], + "ti": [0.245, 0.841, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 21.6, + "s": [328.77, 122.586, 0], + "to": [-0.245, -0.841, 0], + "ti": [0.252, 0.756, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 22.4, + "s": [328.003, 120.201, 0], + "to": [-0.252, -0.756, 0], + "ti": [0.241, 0.68, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 23.2, + "s": [327.259, 118.051, 0], + "to": [-0.241, -0.68, 0], + "ti": [0.227, 0.611, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24, + "s": [326.555, 116.118, 0], + "to": [-0.227, -0.611, 0], + "ti": [0.211, 0.546, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24.8, + "s": [325.898, 114.387, 0], + "to": [-0.211, -0.546, 0], + "ti": [0.196, 0.484, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 25.6, + "s": [325.288, 112.845, 0], + "to": [-0.196, -0.484, 0], + "ti": [0.183, 0.426, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26.4, + "s": [324.72, 111.482, 0], + "to": [-0.183, -0.426, 0], + "ti": [0.173, 0.371, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 27.2, + "s": [324.187, 110.287, 0], + "to": [-0.173, -0.371, 0], + "ti": [0.164, 0.318, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28, + "s": [323.684, 109.255, 0], + "to": [-0.164, -0.318, 0], + "ti": [0.159, 0.267, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28.8, + "s": [323.201, 108.379, 0], + "to": [-0.159, -0.267, 0], + "ti": [0.156, 0.217, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 29.6, + "s": [322.731, 107.655, 0], + "to": [-0.156, -0.217, 0], + "ti": [0.154, 0.168, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 30.4, + "s": [322.267, 107.078, 0], + "to": [-0.154, -0.168, 0], + "ti": [0.155, 0.121, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 31.2, + "s": [321.804, 106.645, 0], + "to": [-0.155, -0.121, 0], + "ti": [0.157, 0.075, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32, + "s": [321.338, 106.352, 0], + "to": [-0.157, -0.075, 0], + "ti": [0.16, 0.031, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [320.863, 106.193, 0], + "to": [-0.16, -0.031, 0], + "ti": [0.165, -0.011, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [320.376, 106.164, 0], + "to": [-0.165, 0.011, 0], + "ti": [0.169, -0.052, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [319.875, 106.261, 0], + "to": [-0.169, 0.052, 0], + "ti": [0.172, -0.092, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 35.2, + "s": [319.363, 106.479, 0], + "to": [-0.172, 0.092, 0], + "ti": [0.18, -0.125, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36, + "s": [318.841, 106.814, 0], + "to": [-0.18, 0.125, 0], + "ti": [0.197, -0.144, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36.8, + "s": [318.282, 107.227, 0], + "to": [-0.197, 0.144, 0], + "ti": [0.217, -0.157, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 37.6, + "s": [317.66, 107.68, 0], + "to": [-0.217, 0.157, 0], + "ti": [0.233, -0.168, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 38.4, + "s": [316.983, 108.169, 0], + "to": [-0.233, 0.168, 0], + "ti": [0.246, -0.177, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 39.2, + "s": [316.262, 108.687, 0], + "to": [-0.246, 0.177, 0], + "ti": [0.254, -0.183, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40, + "s": [315.509, 109.229, 0], + "to": [-0.254, 0.183, 0], + "ti": [0.259, -0.188, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40.8, + "s": [314.735, 109.788, 0], + "to": [-0.259, 0.188, 0], + "ti": [0.258, -0.189, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 41.6, + "s": [313.957, 110.355, 0], + "to": [-0.258, 0.189, 0], + "ti": [0.251, -0.187, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 42.4, + "s": [313.19, 110.921, 0], + "to": [-0.251, 0.187, 0], + "ti": [0.238, -0.182, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 43.2, + "s": [312.452, 111.477, 0], + "to": [-0.238, 0.182, 0], + "ti": [0.219, -0.173, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44, + "s": [311.761, 112.011, 0], + "to": [-0.219, 0.173, 0], + "ti": [0.192, -0.16, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44.8, + "s": [311.139, 112.513, 0], + "to": [-0.192, 0.16, 0], + "ti": [0.164, -0.143, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 45.6, + "s": [310.606, 112.97, 0], + "to": [-0.164, 0.143, 0], + "ti": [0.139, -0.125, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 46.4, + "s": [310.154, 113.373, 0], + "to": [-0.139, 0.125, 0], + "ti": [0.064, -0.057, 0] + }, + {"t": 47.2001953125, "s": [309.77, 113.717, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.657, 0.977, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 4, + "s": [122.178, 94.449, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.995, 0.673, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.11, -0.032, 0]}, + "t": 4.8, + "s": [102.174, 113.837, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.918, 0.997, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.005, 0.112, 0]}, + "t": 5.6, + "s": [39.796, 99.783, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [3.372, 0.943, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-5.849, -0.003, 0]}, + "t": 6.4, + "s": [98.461, 58.708, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.007, 0.913, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.081, -0.182, 0]}, + "t": 7.2, + "s": [97.637, 98.226, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.861, -0.461, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.006, 2.088, 0]}, + "t": 8, + "s": [121.922, 85.826, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.953, 1.17, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.208, 0.088, 0]}, + "t": 8.8, + "s": [95.646, 85.311, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.369, 0.913, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.109, 0.056, 0]}, + "t": 9.6, + "s": [78.043, 76.794, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.019, 1.331, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.096, 1.985, 0]}, + "t": 10.4, + "s": [85.681, 102.643, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.951, 1.177, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.016, 0.067, 0]}, + "t": 11.2, + "s": [135.804, 103.775, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.984, 0.896, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.12, 0.057, 0]}, + "t": 12, + "s": [74.18, 98.145, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.067, 2.296, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.019, 0.418, 0]}, + "t": 12.8, + "s": [99.49, 115.703, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.975, 0.941, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.037, 0.078, 0]}, + "t": 13.6, + "s": [78.946, 120.079, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.978, 0.68, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.036, -0.197, 0]}, + "t": 14.4, + "s": [115.943, 47.625, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.04, 0.894, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.029, 0.113, 0]}, + "t": 15.2, + "s": [90.116, 69.173, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.011, 1.066, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.027, 0.387, 0]}, + "t": 16, + "s": [109.209, 130.363, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.972, 0.906, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.01, 0.037, 0]}, + "t": 16.8, + "s": [80.945, 147.149, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.048, 0.791, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.043, 0.734, 0]}, + "t": 17.6, + "s": [112.856, 117.083, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.002, 0.619, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.03, 0.139, 0]}, + "t": 18.4, + "s": [91.758, 113.226, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.913, 0.958, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.002, 0.107, 0]}, + "t": 19.2, + "s": [124.953, 107.402, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.03, 0.669, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.871, -0.086, 0]}, + "t": 20, + "s": [90.896, 86.565, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.06, 0.86, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.091, 0.111, 0]}, + "t": 20.8, + "s": [89.309, 96.814, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.994, 1.197, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.035, 0.207, 0]}, + "t": 21.6, + "s": [71.266, 127.218, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.064, 0.909, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.007, 0.059, 0]}, + "t": 22.4, + "s": [102.251, 147.752, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.023, 1.152, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.036, 1.009, 0]}, + "t": 23.2, + "s": [73.55, 78.754, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.89, 0.917, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.018, 0.054, 0]}, + "t": 24, + "s": [124.448, 72.546, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.937, -190.895, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.347, -188.417, 0]}, + "t": 24.8, + "s": [59.508, 90.091, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.121, 0.759, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.254, 0.083, 0]}, + "t": 25.6, + "s": [39, 90.083, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.937, 0.922, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.092, 0.127, 0]}, + "t": 26.4, + "s": [44.062, 72.23, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.05, 0.825, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.262, -1.141, 0]}, + "t": 27.2, + "s": [92.349, 38.4, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.058, -0.83, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.031, 0.159, 0]}, + "t": 28, + "s": [80.711, 40.702, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.872, 0.959, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.034, 0.087, 0]}, + "t": 28.8, + "s": [99.332, 43.228, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.945, 0.925, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.238, -0.08, 0]}, + "t": 29.6, + "s": [67.744, 96.178, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.837, 1.576, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.16, -0.761, 0]}, + "t": 30.4, + "s": [50.721, 69.109, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.787, 0.792, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.171, 0.073, 0]}, + "t": 31.2, + "s": [56.555, 71.779, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.453, 0.836, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.137, 0.139, 0]}, + "t": 32, + "s": [62.129, 50.654, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.984, 0.889, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.07, 0.169, 0]}, + "t": 32.8, + "s": [70.779, 19.084, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.921, 1.022, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.02, 0.334, 0]}, + "t": 33.6, + "s": [15.062, -11.663, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.296, 0.99, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.554, 0.018, 0]}, + "t": 34.4, + "s": [59.871, -21.902, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.84, 1.249, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.089, -0.012, 0]}, + "t": 35.2, + "s": [57.59, -8.938, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.049, 0.942, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.174, 0.062, 0]}, + "t": 36, + "s": [24.406, -20.323, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.912, 0.841, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.031, -0.187, 0]}, + "t": 36.8, + "s": [-6.116, 25.019, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.989, 1.089, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.628, 0.175, 0]}, + "t": 37.6, + "s": [42.39, 11.059, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.274, 0.867, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.013, 0.043, 0]}, + "t": 38.4, + "s": [45.011, -1.68, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.577, 1.034, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.064, 0.225, 0]}, + "t": 39.2, + "s": [42.735, 24.617, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.975, 0.934, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.073, 0.024, 0]}, + "t": 40, + "s": [52.491, 40.139, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.91, 0.866, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.036, -0.326, 0]}, + "t": 40.8, + "s": [-24.813, 18.208, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.148, 1.735, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.155, 0.22, 0]}, + "t": 41.6, + "s": [29.263, 22.673, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.047, 0.962, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.092, 0.075, 0]}, + "t": 42.4, + "s": [33.471, 25.402, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.891, 0.786, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.03, -0.07, 0]}, + "t": 43.2, + "s": [72.245, -1.354, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.937, 0.815, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.355, 0.137, 0]}, + "t": 44, + "s": [11.503, 13.161, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.127, 0.918, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.26, 0.152, 0]}, + "t": 44.8, + "s": [-7.15, 35.893, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.908, -1.793, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.092, -4.531, 0]}, + "t": 45.6, + "s": [-2.619, 63.648, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.867, 0.086, 0]}, + "t": 46.4, + "s": [40.328, 63.147, 100] + }, + {"t": 47.2001953125, "s": [44.897, 46.852, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": {"a": 0, "k": [10, 10], "ix": 2}, + "p": {"a": 0, "k": [0, 0], "ix": 3}, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [1, 0.101960785687, 0.380392163992, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Ellipse 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 4, + "op": 48, + "st": 4, + "bm": 0 + }, + { + "ddd": 0, + "ind": 30, + "ty": 4, + "nm": "Shape Layer 22", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 1.6, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 5.6, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 23.2, + "s": [100] + }, + {"t": 36, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 92, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 1.6, + "s": [263.182, 299.465, 0], + "to": [-0.365, 0.027, 0], + "ti": [1.949, -0.179, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 2.4, + "s": [260.99, 299.63, 0], + "to": [-1.949, 0.179, 0], + "ti": [4.498, -0.649, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 3.2, + "s": [251.489, 300.54, 0], + "to": [-4.498, 0.649, 0], + "ti": [6.073, -1.426, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 4, + "s": [234.001, 303.526, 0], + "to": [-6.073, 1.426, 0], + "ti": [5.777, -2.109, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 4.8, + "s": [215.049, 309.096, 0], + "to": [-5.777, 2.109, 0], + "ti": [4.639, -2.46, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 5.6, + "s": [199.338, 316.18, 0], + "to": [-4.639, 2.46, 0], + "ti": [3.563, -2.581, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 6.4, + "s": [187.213, 323.857, 0], + "to": [-3.563, 2.581, 0], + "ti": [2.716, -2.584, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 7.2, + "s": [177.957, 331.668, 0], + "to": [-2.716, 2.584, 0], + "ti": [2.065, -2.517, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8, + "s": [170.915, 339.358, 0], + "to": [-2.065, 2.517, 0], + "ti": [1.564, -2.411, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [165.569, 346.772, 0], + "to": [-1.564, 2.411, 0], + "ti": [1.165, -2.278, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [161.531, 353.821, 0], + "to": [-1.165, 2.278, 0], + "ti": [0.843, -2.131, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 10.4, + "s": [158.58, 360.44, 0], + "to": [-0.843, 2.131, 0], + "ti": [0.594, -1.982, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 11.2, + "s": [156.475, 366.609, 0], + "to": [-0.594, 1.982, 0], + "ti": [0.404, -1.836, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12, + "s": [155.019, 372.333, 0], + "to": [-0.404, 1.836, 0], + "ti": [0.261, -1.696, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12.8, + "s": [154.052, 377.626, 0], + "to": [-0.261, 1.696, 0], + "ti": [0.155, -1.565, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 13.6, + "s": [153.453, 382.511, 0], + "to": [-0.155, 1.565, 0], + "ti": [0.078, -1.441, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 14.4, + "s": [153.124, 387.013, 0], + "to": [-0.078, 1.441, 0], + "ti": [0.024, -1.327, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 15.2, + "s": [152.987, 391.16, 0], + "to": [-0.024, 1.327, 0], + "ti": [-0.012, -1.222, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16, + "s": [152.981, 394.977, 0], + "to": [0.012, 1.222, 0], + "ti": [-0.034, -1.124, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16.8, + "s": [153.059, 398.49, 0], + "to": [0.034, 1.124, 0], + "ti": [-0.044, -1.033, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 17.6, + "s": [153.183, 401.72, 0], + "to": [0.044, 1.033, 0], + "ti": [-0.045, -0.949, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [153.322, 404.688, 0], + "to": [0.045, 0.949, 0], + "ti": [-0.039, -0.87, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [153.452, 407.413, 0], + "to": [0.039, 0.87, 0], + "ti": [-0.028, -0.797, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20, + "s": [153.556, 409.91, 0], + "to": [0.028, 0.797, 0], + "ti": [-0.013, -0.729, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [153.62, 412.195, 0], + "to": [0.013, 0.729, 0], + "ti": [0.005, -0.666, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 21.6, + "s": [153.633, 414.284, 0], + "to": [-0.005, 0.666, 0], + "ti": [0.025, -0.607, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 22.4, + "s": [153.589, 416.19, 0], + "to": [-0.025, 0.607, 0], + "ti": [0.045, -0.552, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 23.2, + "s": [153.484, 417.926, 0], + "to": [-0.045, 0.552, 0], + "ti": [0.066, -0.501, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24, + "s": [153.316, 419.502, 0], + "to": [-0.066, 0.501, 0], + "ti": [0.086, -0.452, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24.8, + "s": [153.086, 420.929, 0], + "to": [-0.086, 0.452, 0], + "ti": [0.105, -0.407, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 25.6, + "s": [152.797, 422.216, 0], + "to": [-0.105, 0.407, 0], + "ti": [0.122, -0.364, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26.4, + "s": [152.454, 423.37, 0], + "to": [-0.122, 0.364, 0], + "ti": [0.137, -0.324, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 27.2, + "s": [152.063, 424.4, 0], + "to": [-0.137, 0.324, 0], + "ti": [0.149, -0.286, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28, + "s": [151.631, 425.314, 0], + "to": [-0.149, 0.286, 0], + "ti": [0.157, -0.251, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28.8, + "s": [151.17, 426.118, 0], + "to": [-0.157, 0.251, 0], + "ti": [0.161, -0.217, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 29.6, + "s": [150.689, 426.818, 0], + "to": [-0.161, 0.217, 0], + "ti": [0.161, -0.186, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 30.4, + "s": [150.202, 427.422, 0], + "to": [-0.161, 0.186, 0], + "ti": [0.156, -0.157, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 31.2, + "s": [149.722, 427.936, 0], + "to": [-0.156, 0.157, 0], + "ti": [0.145, -0.13, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32, + "s": [149.266, 428.364, 0], + "to": [-0.145, 0.13, 0], + "ti": [0.13, -0.103, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [148.849, 428.714, 0], + "to": [-0.13, 0.103, 0], + "ti": [0.112, -0.075, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [148.487, 428.98, 0], + "to": [-0.112, 0.075, 0], + "ti": [0.095, -0.052, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [148.176, 429.161, 0], + "to": [-0.095, 0.052, 0], + "ti": [0.076, -0.036, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 35.2, + "s": [147.92, 429.292, 0], + "to": [-0.076, 0.036, 0], + "ti": [0.058, -0.02, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36, + "s": [147.718, 429.375, 0], + "to": [-0.058, 0.02, 0], + "ti": [0.041, -0.005, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36.8, + "s": [147.57, 429.411, 0], + "to": [-0.041, 0.005, 0], + "ti": [0.024, 0.009, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 37.6, + "s": [147.473, 429.404, 0], + "to": [-0.024, -0.009, 0], + "ti": [0.007, 0.022, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 38.4, + "s": [147.427, 429.356, 0], + "to": [-0.007, -0.022, 0], + "ti": [-0.008, 0.035, 0] + }, + { + "i": {"x": 0.833, "y": 0.974}, + "o": {"x": 0.167, "y": 0.018}, + "t": 39.2, + "s": [147.429, 429.27, 0], + "to": [0.008, -0.035, 0], + "ti": [-0.023, 0.046, 0] + }, + { + "i": {"x": 0.833, "y": 0.951}, + "o": {"x": 0.167, "y": 0.037}, + "t": 40, + "s": [147.476, 429.149, 0], + "to": [0.023, -0.046, 0], + "ti": [-0.037, 0.056, 0] + }, + { + "i": {"x": 0.833, "y": 0.939}, + "o": {"x": 0.167, "y": 0.05}, + "t": 40.8, + "s": [147.567, 428.995, 0], + "to": [0.037, -0.056, 0], + "ti": [-0.05, 0.065, 0] + }, + { + "i": {"x": 0.833, "y": 0.93}, + "o": {"x": 0.167, "y": 0.06}, + "t": 41.6, + "s": [147.698, 428.811, 0], + "to": [0.05, -0.065, 0], + "ti": [-0.061, 0.073, 0] + }, + { + "i": {"x": 0.833, "y": 0.924}, + "o": {"x": 0.167, "y": 0.067}, + "t": 42.4, + "s": [147.866, 428.602, 0], + "to": [0.061, -0.073, 0], + "ti": [-0.072, 0.08, 0] + }, + { + "i": {"x": 0.833, "y": 0.92}, + "o": {"x": 0.167, "y": 0.072}, + "t": 43.2, + "s": [148.067, 428.371, 0], + "to": [0.072, -0.08, 0], + "ti": [-0.081, 0.086, 0] + }, + { + "i": {"x": 0.833, "y": 0.917}, + "o": {"x": 0.167, "y": 0.077}, + "t": 44, + "s": [148.297, 428.121, 0], + "to": [0.081, -0.086, 0], + "ti": [-0.088, 0.09, 0] + }, + { + "i": {"x": 0.833, "y": 0.915}, + "o": {"x": 0.167, "y": 0.08}, + "t": 44.8, + "s": [148.552, 427.857, 0], + "to": [0.088, -0.09, 0], + "ti": [-0.094, 0.093, 0] + }, + { + "i": {"x": 0.833, "y": 0.913}, + "o": {"x": 0.167, "y": 0.084}, + "t": 45.6, + "s": [148.827, 427.581, 0], + "to": [0.094, -0.093, 0], + "ti": [-0.099, 0.094, 0] + }, + { + "i": {"x": 0.833, "y": 0.912}, + "o": {"x": 0.167, "y": 0.087}, + "t": 46.4, + "s": [149.118, 427.299, 0], + "to": [0.099, -0.094, 0], + "ti": [-0.05, 0.047, 0] + }, + {"t": 47.2001953125, "s": [149.419, 427.014, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.986, 0.936, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 1.6, + "s": [78.01, 99.254, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.926, 0.531, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.017, -0.276, 0]}, + "t": 2.4, + "s": [128.233, 72.965, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.337, 0.874, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.687, 0.101, 0]}, + "t": 3.2, + "s": [86.694, 79.056, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.838, 1.122, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.067, 0.245, 0]}, + "t": 4, + "s": [91.188, 107.271, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.041, 0.842, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.172, 0.05, 0]}, + "t": 4.8, + "s": [68.543, 121.799, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.872, 0.956, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.027, 0.177, 0]}, + "t": 5.6, + "s": [47.195, 85.924, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.787, 0.859, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.24, -0.094, 0]}, + "t": 6.4, + "s": [79.057, 53.992, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.016, 0.785, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.137, 0.203, 0]}, + "t": 7.2, + "s": [95.971, 69, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.952, 0.823, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.013, 0.136, 0]}, + "t": 8, + "s": [122.24, 79.447, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.768, 0.977, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.111, 0.157, 0]}, + "t": 8.8, + "s": [91.043, 95.99, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.026, 0.806, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.13, -0.032, 0]}, + "t": 9.6, + "s": [104.449, 114.638, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.962, 1.057, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.02, 0.146, 0]}, + "t": 10.4, + "s": [128.392, 101.122, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.99, 0.907, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.071, 0.034, 0]}, + "t": 11.2, + "s": [96.902, 83.222, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.026, 1.705, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.011, 0.803, 0]}, + "t": 12, + "s": [113.87, 113.437, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.96, 0.836, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.02, 0.075, 0]}, + "t": 12.8, + "s": [98.911, 116.933, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.845, 1.094, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.077, 0.169, 0]}, + "t": 13.6, + "s": [118.545, 83.843, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.612, 0.887, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.18, 0.044, 0]}, + "t": 14.4, + "s": [108.334, 51.632, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.07, 1.117, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.106, 0.317, 0]}, + "t": 15.2, + "s": [99.536, 120.079, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.987, 0.942, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.038, 0.049, 0]}, + "t": 16, + "s": [67.373, 144.525, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.993, 0.851, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.016, -0.19, 0]}, + "t": 16.8, + "s": [126.372, 85.891, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.911, 1.01, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.008, 0.19, 0]}, + "t": 17.6, + "s": [76.632, 103.785, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.779, 0.97, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.349, 0.009, 0]}, + "t": 18.4, + "s": [122.04, 117.809, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.843, 1.086, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.075, -0.046, 0]}, + "t": 19.2, + "s": [125.029, 102.081, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.135, 1.161, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.177, 0.042, 0]}, + "t": 20, + "s": [94.09, 112.18, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.981, 0.983, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.052, 0.055, 0]}, + "t": 20.8, + "s": [66.677, 91.705, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.946, 0.885, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.024, -0.021, 0]}, + "t": 21.6, + "s": [138.63, 151.835, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.1, 0.917, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.153, 0.304, 0]}, + "t": 22.4, + "s": [82.794, 103.616, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.825, 23.955, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.045, -14.671, 0]}, + "t": 23.2, + "s": [102.519, 85.419, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.959, 0.97, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.159, 0.083, 0]}, + "t": 24, + "s": [59.163, 85.522, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.781, 1.06, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.081, -0.046, 0]}, + "t": 24.8, + "s": [11.254, 57.108, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.97, 0.941, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.134, 0.035, 0]}, + "t": 25.6, + "s": [35.57, 75.366, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.91, 0.974, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.047, -0.198, 0]}, + "t": 26.4, + "s": [75.263, 44.021, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.16, 1.441, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.081, -0.038, 0]}, + "t": 27.2, + "s": [49.845, 53.322, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.019, 0.947, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.09, 0.07, 0]}, + "t": 28, + "s": [47.721, 46.924, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.937, 0.949, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.016, -0.142, 0]}, + "t": 28.8, + "s": [20.292, 87.156, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.992, 1.01, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.252, -0.131, 0]}, + "t": 29.6, + "s": [54.089, 72.277, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.683, 0.671, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.008, 0.009, 0]}, + "t": 30.4, + "s": [45.702, 78.056, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.156, 0.664, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.113, 0.112, 0]}, + "t": 31.2, + "s": [53.33, 71.575, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.955, 0.899, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.054, 0.111, 0]}, + "t": 32, + "s": [74.741, 52.442, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.831, 0.987, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.096, 0.48, 0]}, + "t": 32.8, + "s": [13.206, -5.553, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.979, 1.051, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.164, -0.015, 0]}, + "t": 33.6, + "s": [41.869, -17.736, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.774, 1.016, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.027, 0.032, 0]}, + "t": 34.4, + "s": [71.33, -7.435, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.967, 0.832, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.132, 0.013, 0]}, + "t": 35.2, + "s": [49.137, -24.086, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.882, 0.938, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.056, 0.165, 0]}, + "t": 36, + "s": [11.219, -4.255, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.917, 0.797, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.282, -0.239, 0]}, + "t": 36.8, + "s": [33.923, 16.004, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [26.651, 1.516, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-41.391, 0.141, 0]}, + "t": 37.6, + "s": [43.431, 10.768, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.023, 0.936, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.083, 0.072, 0]}, + "t": 38.4, + "s": [43.412, 3.234, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.937, 0.76, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.077, -0.285, 0]}, + "t": 39.2, + "s": [49.311, 57.286, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.757, 0.888, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.255, 0.128, 0]}, + "t": 40, + "s": [-29.011, 45.06, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.807, 1.116, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.127, 0.328, 0]}, + "t": 40.8, + "s": [-9.692, 22.004, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.012, 0.927, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.147, 0.048, 0]}, + "t": 41.6, + "s": [27.268, 14.157, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.85, 0.798, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.01, -0.607, 0]}, + "t": 42.4, + "s": [75.93, 32.89, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.972, 0.796, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.187, 0.142, 0]}, + "t": 43.2, + "s": [20.351, 30.629, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.765, 1.805, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.041, 0.141, 0]}, + "t": 44, + "s": [-24.176, 27.418, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.956, 0.931, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.129, 0.076, 0]}, + "t": 44.8, + "s": [5.634, 22.754, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.972, 0.674, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.092, -0.394, 0]}, + "t": 45.6, + "s": [59.79, 72.494, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.043, 0.112, 0]}, + "t": 46.4, + "s": [34.087, 63.804, 100] + }, + {"t": 47.2001953125, "s": [51.017, 38.534, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": {"a": 0, "k": [10, 10], "ix": 2}, + "p": {"a": 0, "k": [0, 0], "ix": 3}, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [1, 0.101960785687, 0.380392163992, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Ellipse 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 1.599609375, + "op": 48, + "st": 1.599609375, + "bm": 0 + }, + { + "ddd": 0, + "ind": 31, + "ty": 4, + "nm": "Shape Layer 21", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 6.4, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 10.4, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 28, + "s": [100] + }, + {"t": 40.7998046875, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 92, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 6.4, + "s": [268.269, 306.17, 0], + "to": [0.003, 0.494, 0], + "ti": [-0.124, -2.305, 0] + }, + { + "i": {"x": 0.833, "y": 0.999}, + "o": {"x": 0.167, "y": 0}, + "t": 7.2, + "s": [268.288, 309.137, 0], + "to": [0.124, 2.305, 0], + "ti": [-0.683, -5.046, 0] + }, + { + "i": {"x": 0.833, "y": 0.995}, + "o": {"x": 0.167, "y": 0.004}, + "t": 8, + "s": [269.014, 319.997, 0], + "to": [0.683, 5.046, 0], + "ti": [-1.89, -6.606, 0] + }, + { + "i": {"x": 0.833, "y": 0.979}, + "o": {"x": 0.167, "y": 0.021}, + "t": 8.8, + "s": [272.384, 339.414, 0], + "to": [1.89, 6.606, 0], + "ti": [-3.289, -5.823, 0] + }, + { + "i": {"x": 0.833, "y": 0.941}, + "o": {"x": 0.167, "y": 0.069}, + "t": 9.6, + "s": [280.355, 359.634, 0], + "to": [3.289, 5.823, 0], + "ti": [-4.111, -3.921, 0] + }, + { + "i": {"x": 0.833, "y": 0.896}, + "o": {"x": 0.167, "y": 0.125}, + "t": 10.4, + "s": [292.117, 374.353, 0], + "to": [4.111, 3.921, 0], + "ti": [-4.169, -2.298, 0] + }, + { + "i": {"x": 0.833, "y": 0.869}, + "o": {"x": 0.167, "y": 0.156}, + "t": 11.2, + "s": [305.021, 383.162, 0], + "to": [4.169, 2.298, 0], + "ti": [-3.808, -1.326, 0] + }, + { + "i": {"x": 0.833, "y": 0.857}, + "o": {"x": 0.167, "y": 0.168}, + "t": 12, + "s": [317.131, 388.142, 0], + "to": [3.808, 1.326, 0], + "ti": [-3.36, -0.831, 0] + }, + { + "i": {"x": 0.833, "y": 0.85}, + "o": {"x": 0.167, "y": 0.172}, + "t": 12.8, + "s": [327.87, 391.116, 0], + "to": [3.36, 0.831, 0], + "ti": [-2.951, -0.601, 0] + }, + { + "i": {"x": 0.833, "y": 0.849}, + "o": {"x": 0.167, "y": 0.173}, + "t": 13.6, + "s": [337.294, 393.129, 0], + "to": [2.951, 0.601, 0], + "ti": [-2.599, -0.51, 0] + }, + { + "i": {"x": 0.833, "y": 0.848}, + "o": {"x": 0.167, "y": 0.172}, + "t": 14.4, + "s": [345.577, 394.723, 0], + "to": [2.599, 0.51, 0], + "ti": [-2.295, -0.495, 0] + }, + { + "i": {"x": 0.833, "y": 0.85}, + "o": {"x": 0.167, "y": 0.167}, + "t": 15.2, + "s": [352.885, 396.19, 0], + "to": [2.295, 0.495, 0], + "ti": [-2.032, -0.524, 0] + }, + { + "i": {"x": 0.833, "y": 0.853}, + "o": {"x": 0.167, "y": 0.162}, + "t": 16, + "s": [359.349, 397.694, 0], + "to": [2.032, 0.524, 0], + "ti": [-1.8, -0.577, 0] + }, + { + "i": {"x": 0.833, "y": 0.859}, + "o": {"x": 0.167, "y": 0.155}, + "t": 16.8, + "s": [365.075, 399.331, 0], + "to": [1.8, 0.577, 0], + "ti": [-1.589, -0.643, 0] + }, + { + "i": {"x": 0.833, "y": 0.867}, + "o": {"x": 0.167, "y": 0.145}, + "t": 17.6, + "s": [370.148, 401.158, 0], + "to": [1.589, 0.643, 0], + "ti": [-1.392, -0.71, 0] + }, + { + "i": {"x": 0.833, "y": 0.879}, + "o": {"x": 0.167, "y": 0.131}, + "t": 18.4, + "s": [374.61, 403.19, 0], + "to": [1.392, 0.71, 0], + "ti": [-1.21, -0.771, 0] + }, + { + "i": {"x": 0.833, "y": 0.893}, + "o": {"x": 0.167, "y": 0.116}, + "t": 19.2, + "s": [378.501, 405.417, 0], + "to": [1.21, 0.771, 0], + "ti": [-1.047, -0.823, 0] + }, + { + "i": {"x": 0.833, "y": 0.909}, + "o": {"x": 0.167, "y": 0.098}, + "t": 20, + "s": [381.873, 407.817, 0], + "to": [1.047, 0.823, 0], + "ti": [-0.897, -0.852, 0] + }, + { + "i": {"x": 0.833, "y": 0.924}, + "o": {"x": 0.167, "y": 0.083}, + "t": 20.8, + "s": [384.78, 410.354, 0], + "to": [0.897, 0.852, 0], + "ti": [-0.758, -0.847, 0] + }, + { + "i": {"x": 0.833, "y": 0.936}, + "o": {"x": 0.167, "y": 0.071}, + "t": 21.6, + "s": [387.255, 412.931, 0], + "to": [0.758, 0.847, 0], + "ti": [-0.635, -0.817, 0] + }, + { + "i": {"x": 0.833, "y": 0.946}, + "o": {"x": 0.167, "y": 0.06}, + "t": 22.4, + "s": [389.33, 415.438, 0], + "to": [0.635, 0.817, 0], + "ti": [-0.53, -0.777, 0] + }, + { + "i": {"x": 0.833, "y": 0.954}, + "o": {"x": 0.167, "y": 0.051}, + "t": 23.2, + "s": [391.063, 417.835, 0], + "to": [0.53, 0.777, 0], + "ti": [-0.442, -0.729, 0] + }, + { + "i": {"x": 0.833, "y": 0.961}, + "o": {"x": 0.167, "y": 0.043}, + "t": 24, + "s": [392.509, 420.098, 0], + "to": [0.442, 0.729, 0], + "ti": [-0.37, -0.677, 0] + }, + { + "i": {"x": 0.833, "y": 0.966}, + "o": {"x": 0.167, "y": 0.037}, + "t": 24.8, + "s": [393.717, 422.209, 0], + "to": [0.37, 0.677, 0], + "ti": [-0.311, -0.623, 0] + }, + { + "i": {"x": 0.833, "y": 0.971}, + "o": {"x": 0.167, "y": 0.033}, + "t": 25.6, + "s": [394.73, 424.158, 0], + "to": [0.311, 0.623, 0], + "ti": [-0.263, -0.569, 0] + }, + { + "i": {"x": 0.833, "y": 0.974}, + "o": {"x": 0.167, "y": 0.029}, + "t": 26.4, + "s": [395.584, 425.945, 0], + "to": [0.263, 0.569, 0], + "ti": [-0.224, -0.517, 0] + }, + { + "i": {"x": 0.833, "y": 0.976}, + "o": {"x": 0.167, "y": 0.026}, + "t": 27.2, + "s": [396.309, 427.572, 0], + "to": [0.224, 0.517, 0], + "ti": [-0.192, -0.467, 0] + }, + { + "i": {"x": 0.833, "y": 0.978}, + "o": {"x": 0.167, "y": 0.025}, + "t": 28, + "s": [396.928, 429.046, 0], + "to": [0.192, 0.467, 0], + "ti": [-0.166, -0.419, 0] + }, + { + "i": {"x": 0.833, "y": 0.979}, + "o": {"x": 0.167, "y": 0.023}, + "t": 28.8, + "s": [397.461, 430.372, 0], + "to": [0.166, 0.419, 0], + "ti": [-0.144, -0.373, 0] + }, + { + "i": {"x": 0.833, "y": 0.98}, + "o": {"x": 0.167, "y": 0.022}, + "t": 29.6, + "s": [397.921, 431.558, 0], + "to": [0.144, 0.373, 0], + "ti": [-0.125, -0.33, 0] + }, + { + "i": {"x": 0.833, "y": 0.981}, + "o": {"x": 0.167, "y": 0.022}, + "t": 30.4, + "s": [398.322, 432.612, 0], + "to": [0.125, 0.33, 0], + "ti": [-0.11, -0.29, 0] + }, + { + "i": {"x": 0.833, "y": 0.98}, + "o": {"x": 0.167, "y": 0.023}, + "t": 31.2, + "s": [398.672, 433.54, 0], + "to": [0.11, 0.29, 0], + "ti": [-0.096, -0.253, 0] + }, + { + "i": {"x": 0.833, "y": 0.98}, + "o": {"x": 0.167, "y": 0.023}, + "t": 32, + "s": [398.98, 434.351, 0], + "to": [0.096, 0.253, 0], + "ti": [-0.085, -0.219, 0] + }, + { + "i": {"x": 0.833, "y": 0.979}, + "o": {"x": 0.167, "y": 0.024}, + "t": 32.8, + "s": [399.251, 435.056, 0], + "to": [0.085, 0.219, 0], + "ti": [-0.075, -0.187, 0] + }, + { + "i": {"x": 0.833, "y": 0.978}, + "o": {"x": 0.167, "y": 0.026}, + "t": 33.6, + "s": [399.491, 435.663, 0], + "to": [0.075, 0.187, 0], + "ti": [-0.066, -0.157, 0] + }, + { + "i": {"x": 0.833, "y": 0.976}, + "o": {"x": 0.167, "y": 0.029}, + "t": 34.4, + "s": [399.701, 436.178, 0], + "to": [0.066, 0.157, 0], + "ti": [-0.058, -0.129, 0] + }, + { + "i": {"x": 0.833, "y": 0.973}, + "o": {"x": 0.167, "y": 0.033}, + "t": 35.2, + "s": [399.886, 436.606, 0], + "to": [0.058, 0.129, 0], + "ti": [-0.05, -0.103, 0] + }, + { + "i": {"x": 0.833, "y": 0.97}, + "o": {"x": 0.167, "y": 0.038}, + "t": 36, + "s": [400.047, 436.953, 0], + "to": [0.05, 0.103, 0], + "ti": [-0.042, -0.078, 0] + }, + { + "i": {"x": 0.833, "y": 0.964}, + "o": {"x": 0.167, "y": 0.049}, + "t": 36.8, + "s": [400.184, 437.223, 0], + "to": [0.042, 0.078, 0], + "ti": [-0.035, -0.055, 0] + }, + { + "i": {"x": 0.833, "y": 0.948}, + "o": {"x": 0.167, "y": 0.069}, + "t": 37.6, + "s": [400.3, 437.422, 0], + "to": [0.035, 0.055, 0], + "ti": [-0.029, -0.04, 0] + }, + { + "i": {"x": 0.833, "y": 0.941}, + "o": {"x": 0.167, "y": 0.062}, + "t": 38.4, + "s": [400.393, 437.552, 0], + "to": [0.029, 0.04, 0], + "ti": [-0.025, -0.04, 0] + }, + { + "i": {"x": 0.833, "y": 0.961}, + "o": {"x": 0.167, "y": 0.035}, + "t": 39.2, + "s": [400.471, 437.661, 0], + "to": [0.025, 0.04, 0], + "ti": [-0.022, -0.048, 0] + }, + { + "i": {"x": 0.833, "y": 0.976}, + "o": {"x": 0.167, "y": 0.021}, + "t": 40, + "s": [400.541, 437.792, 0], + "to": [0.022, 0.048, 0], + "ti": [-0.019, -0.055, 0] + }, + { + "i": {"x": 0.833, "y": 0.986}, + "o": {"x": 0.167, "y": 0.012}, + "t": 40.8, + "s": [400.602, 437.946, 0], + "to": [0.019, 0.055, 0], + "ti": [-0.015, -0.062, 0] + }, + { + "i": {"x": 0.833, "y": 0.993}, + "o": {"x": 0.167, "y": 0.006}, + "t": 41.6, + "s": [400.653, 438.122, 0], + "to": [0.015, 0.062, 0], + "ti": [-0.012, -0.069, 0] + }, + { + "i": {"x": 0.833, "y": 0.997}, + "o": {"x": 0.167, "y": 0.003}, + "t": 42.4, + "s": [400.694, 438.32, 0], + "to": [0.012, 0.069, 0], + "ti": [-0.008, -0.076, 0] + }, + { + "i": {"x": 0.833, "y": 0.999}, + "o": {"x": 0.167, "y": 0.001}, + "t": 43.2, + "s": [400.724, 438.538, 0], + "to": [0.008, 0.076, 0], + "ti": [-0.004, -0.082, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44, + "s": [400.743, 438.775, 0], + "to": [0.004, 0.082, 0], + "ti": [0.001, -0.09, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44.8, + "s": [400.751, 439.03, 0], + "to": [-0.001, 0.09, 0], + "ti": [0.01, -0.102, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 45.6, + "s": [400.737, 439.316, 0], + "to": [-0.01, 0.102, 0], + "ti": [0.019, -0.113, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 46.4, + "s": [400.693, 439.644, 0], + "to": [-0.019, 0.113, 0], + "ti": [0.011, -0.059, 0] + }, + {"t": 47.2001953125, "s": [400.624, 439.996, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-5.264, 0.476, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 6.4, + "s": [101.238, 48.218, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.994, 0.881, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.084, 0.099, 0]}, + "t": 7.2, + "s": [100.863, 56.49, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.87, 1.004, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.006, 0.279, 0]}, + "t": 8, + "s": [73.006, 100.241, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.943, 0.716, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.233, 0.004, 0]}, + "t": 8.8, + "s": [98.954, 118.86, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.692, 0.993, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.185, 0.118, 0]}, + "t": 9.6, + "s": [113.422, 99.365, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.962, 0.95, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.114, -0.008, 0]}, + "t": 10.4, + "s": [108.921, 52.336, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.185, 0.915, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.07, -0.128, 0]}, + "t": 11.2, + "s": [96.758, 95.263, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.076, 1.566, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.057, 3.933, 0]}, + "t": 12, + "s": [103.361, 78.328, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.937, 0.67, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.04, 0.073, 0]}, + "t": 12.8, + "s": [82.062, 77.962, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.434, 0.476, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.254, 0.111, 0]}, + "t": 13.6, + "s": [122.901, 80.818, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.986, 1.01, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.098, 0.099, 0]}, + "t": 14.4, + "s": [112.827, 89.288, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.908, 0.891, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.016, 0.009, 0]}, + "t": 15.2, + "s": [54.614, 133.963, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.977, 1.123, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.871, 0.351, 0]}, + "t": 16, + "s": [103.222, 83.744, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.079, 0.913, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.032, 0.05, 0]}, + "t": 16.8, + "s": [108.364, 68.125, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.812, -0.394, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.04, 2.174, 0]}, + "t": 17.6, + "s": [104.662, 106.75, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.481, 1.162, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.15, 0.089, 0]}, + "t": 18.4, + "s": [111.862, 108.291, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.008, 0.968, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.071, 0.055, 0]}, + "t": 19.2, + "s": [120.907, 132.514, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.948, 0.892, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.007, -0.052, 0]}, + "t": 20, + "s": [59.613, 61.164, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.83, 1.094, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.141, 0.365, 0]}, + "t": 20.8, + "s": [126.782, 105.209, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.965, 1.033, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.163, 0.044, 0]}, + "t": 21.6, + "s": [101.882, 118.255, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.119, 1.091, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.059, 0.024, 0]}, + "t": 22.4, + "s": [75.979, 90.498, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.983, 0.951, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.049, 0.043, 0]}, + "t": 23.2, + "s": [91.099, 129.32, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.873, 0.878, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.022, -0.118, 0]}, + "t": 24, + "s": [54.42, 48.147, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.036, 0.911, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.244, 0.263, 0]}, + "t": 24.8, + "s": [83.4, 81.807, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.914, 2.821, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.025, 1.37, 0]}, + "t": 25.6, + "s": [98.473, 97.441, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-4.521, 1.004, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [3.171, 0.08, 0]}, + "t": 26.4, + "s": [76.975, 98.454, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.977, 1.005, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.085, 0.004, 0]}, + "t": 27.2, + "s": [76.395, 75.312, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.837, 0.918, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.032, 0.005, 0]}, + "t": 28, + "s": [38.536, 99.649, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.978, 2.101, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.171, -4.785, 0]}, + "t": 28.8, + "s": [65.888, 73.73, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.051, 1.151, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.03, 0.077, 0]}, + "t": 29.6, + "s": [91.971, 74.174, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.063, 1.136, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.032, 0.054, 0]}, + "t": 30.4, + "s": [72.715, 67.868, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.933, 0.911, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.036, 0.052, 0]}, + "t": 31.2, + "s": [103.785, 85.634, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.65, 1.416, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.353, 1.245, 0]}, + "t": 32, + "s": [49.165, 38.912, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.946, 0.946, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.109, 0.069, 0]}, + "t": 32.8, + "s": [59.594, 35.561, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.678, 0.628, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.154, -0.156, 0]}, + "t": 33.6, + "s": [92.977, 55.629, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.84, 0.983, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.112, 0.107, 0]}, + "t": 34.4, + "s": [81.252, 48.654, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.985, 0.899, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.174, -0.021, 0]}, + "t": 35.2, + "s": [47.617, 24.458, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.939, 1.627, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.018, 0.474, 0]}, + "t": 36, + "s": [16.653, 43.696, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.962, 0.982, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.225, 0.074, 0]}, + "t": 36.8, + "s": [42.187, 47.804, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.963, 0.963, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.07, -0.023, 0]}, + "t": 37.6, + "s": [35.289, 12.804, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.877, 0.815, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.077, -0.066, 0]}, + "t": 38.4, + "s": [39.035, 40.12, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.027, 0.867, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.257, 0.151, 0]}, + "t": 39.2, + "s": [-7.944, 24.911, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.741, 1.341, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.02, 0.223, 0]}, + "t": 40, + "s": [-30.445, 6.276, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.947, 0.894, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.123, 0.067, 0]}, + "t": 40.8, + "s": [-0.773, -4.844, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.692, 0.982, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.147, 0.394, 0]}, + "t": 41.6, + "s": [61.907, 51.792, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.975, 0.468, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.114, -0.024, 0]}, + "t": 42.4, + "s": [39.231, 67.006, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.829, 0.968, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.035, 0.099, 0]}, + "t": 43.2, + "s": [-21.899, 55.157, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.981, 0.881, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.163, -0.053, 0]}, + "t": 44, + "s": [21.199, -8.63, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.959, 1.022, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.025, 0.276, 0]}, + "t": 44.8, + "s": [66.363, 30.41, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.943, 0.882, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.08, 0.018, 0]}, + "t": 45.6, + "s": [31.738, 47.268, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.182, 0.283, 0]}, + "t": 46.4, + "s": [49.437, 25.928, 100] + }, + {"t": 47.2001953125, "s": [43.876, 17.029, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": {"a": 0, "k": [10, 10], "ix": 2}, + "p": {"a": 0, "k": [0, 0], "ix": 3}, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [1, 0.101960785687, 0.380392163992, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Ellipse 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 6.400390625, + "op": 48, + "st": 6.400390625, + "bm": 0 + }, + { + "ddd": 0, + "ind": 32, + "ty": 4, + "nm": "Shape Layer 20", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 4.8, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 8.8, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 26.4, + "s": [100] + }, + {"t": 39.2001953125, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 0, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 4.8, + "s": [273.987, 258.212, 0], + "to": [-0.226, 0.261, 0], + "ti": [1.235, -1.262, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 5.6, + "s": [272.634, 259.781, 0], + "to": [-1.235, 1.262, 0], + "ti": [3.172, -2.472, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 6.4, + "s": [266.579, 265.787, 0], + "to": [-3.172, 2.472, 0], + "ti": [4.928, -2.338, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 7.2, + "s": [253.605, 274.613, 0], + "to": [-4.928, 2.338, 0], + "ti": [5.281, -0.789, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8, + "s": [237.011, 279.814, 0], + "to": [-5.281, 0.789, 0], + "ti": [4.495, 0.772, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [221.916, 279.349, 0], + "to": [-4.495, -0.772, 0], + "ti": [3.459, 1.674, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [210.041, 275.183, 0], + "to": [-3.459, -1.674, 0], + "ti": [2.573, 2.049, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 10.4, + "s": [201.165, 269.307, 0], + "to": [-2.573, -2.049, 0], + "ti": [1.908, 2.132, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 11.2, + "s": [194.6, 262.891, 0], + "to": [-1.908, -2.132, 0], + "ti": [1.43, 2.079, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12, + "s": [189.714, 256.512, 0], + "to": [-1.43, -2.079, 0], + "ti": [1.088, 1.968, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12.8, + "s": [186.021, 250.417, 0], + "to": [-1.088, -1.968, 0], + "ti": [0.842, 1.835, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 13.6, + "s": [183.185, 244.707, 0], + "to": [-0.842, -1.835, 0], + "ti": [0.663, 1.699, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 14.4, + "s": [180.968, 239.407, 0], + "to": [-0.663, -1.699, 0], + "ti": [0.532, 1.568, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 15.2, + "s": [179.205, 234.511, 0], + "to": [-0.532, -1.568, 0], + "ti": [0.434, 1.443, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16, + "s": [177.777, 230, 0], + "to": [-0.434, -1.443, 0], + "ti": [0.361, 1.326, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16.8, + "s": [176.6, 225.853, 0], + "to": [-0.361, -1.326, 0], + "ti": [0.305, 1.218, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 17.6, + "s": [175.612, 222.043, 0], + "to": [-0.305, -1.218, 0], + "ti": [0.263, 1.116, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [174.767, 218.548, 0], + "to": [-0.263, -1.116, 0], + "ti": [0.231, 1.022, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [174.033, 215.345, 0], + "to": [-0.231, -1.022, 0], + "ti": [0.205, 0.934, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20, + "s": [173.383, 212.416, 0], + "to": [-0.205, -0.934, 0], + "ti": [0.185, 0.851, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [172.801, 209.743, 0], + "to": [-0.185, -0.851, 0], + "ti": [0.169, 0.773, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 21.6, + "s": [172.273, 207.311, 0], + "to": [-0.169, -0.773, 0], + "ti": [0.155, 0.7, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 22.4, + "s": [171.79, 205.104, 0], + "to": [-0.155, -0.7, 0], + "ti": [0.143, 0.63, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 23.2, + "s": [171.345, 203.111, 0], + "to": [-0.143, -0.63, 0], + "ti": [0.131, 0.565, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24, + "s": [170.934, 201.322, 0], + "to": [-0.131, -0.565, 0], + "ti": [0.12, 0.503, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24.8, + "s": [170.557, 199.723, 0], + "to": [-0.12, -0.503, 0], + "ti": [0.109, 0.444, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 25.6, + "s": [170.213, 198.306, 0], + "to": [-0.109, -0.444, 0], + "ti": [0.097, 0.389, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26.4, + "s": [169.903, 197.059, 0], + "to": [-0.097, -0.389, 0], + "ti": [0.085, 0.336, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 27.2, + "s": [169.629, 195.974, 0], + "to": [-0.085, -0.336, 0], + "ti": [0.07, 0.287, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28, + "s": [169.396, 195.042, 0], + "to": [-0.07, -0.287, 0], + "ti": [0.055, 0.24, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28.8, + "s": [169.206, 194.254, 0], + "to": [-0.055, -0.24, 0], + "ti": [0.037, 0.195, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 29.6, + "s": [169.067, 193.604, 0], + "to": [-0.037, -0.195, 0], + "ti": [0.018, 0.153, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 30.4, + "s": [168.983, 193.083, 0], + "to": [-0.018, -0.153, 0], + "ti": [-0.004, 0.114, 0] + }, + { + "i": {"x": 0.833, "y": 0.996}, + "o": {"x": 0.167, "y": 0.005}, + "t": 31.2, + "s": [168.961, 192.685, 0], + "to": [0.004, -0.114, 0], + "ti": [-0.028, 0.076, 0] + }, + { + "i": {"x": 0.833, "y": 0.953}, + "o": {"x": 0.167, "y": 0.062}, + "t": 32, + "s": [169.007, 192.402, 0], + "to": [0.028, -0.076, 0], + "ti": [-0.046, 0.036, 0] + }, + { + "i": {"x": 0.833, "y": 0.843}, + "o": {"x": 0.167, "y": 0.167}, + "t": 32.8, + "s": [169.128, 192.228, 0], + "to": [0.046, -0.036, 0], + "ti": [-0.055, -0.006, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.127}, + "t": 33.6, + "s": [169.284, 192.183, 0], + "to": [0.055, 0.006, 0], + "ti": [-0.06, -0.042, 0] + }, + { + "i": {"x": 0.833, "y": 0.902}, + "o": {"x": 0.167, "y": 0.076}, + "t": 34.4, + "s": [169.457, 192.261, 0], + "to": [0.06, 0.042, 0], + "ti": [-0.063, -0.073, 0] + }, + { + "i": {"x": 0.833, "y": 0.936}, + "o": {"x": 0.167, "y": 0.053}, + "t": 35.2, + "s": [169.642, 192.438, 0], + "to": [0.063, 0.073, 0], + "ti": [-0.065, -0.097, 0] + }, + { + "i": {"x": 0.833, "y": 0.954}, + "o": {"x": 0.167, "y": 0.042}, + "t": 36, + "s": [169.834, 192.698, 0], + "to": [0.065, 0.097, 0], + "ti": [-0.066, -0.11, 0] + }, + { + "i": {"x": 0.833, "y": 0.959}, + "o": {"x": 0.167, "y": 0.042}, + "t": 36.8, + "s": [170.032, 193.022, 0], + "to": [0.066, 0.11, 0], + "ti": [-0.066, -0.107, 0] + }, + { + "i": {"x": 0.833, "y": 0.952}, + "o": {"x": 0.167, "y": 0.052}, + "t": 37.6, + "s": [170.231, 193.359, 0], + "to": [0.066, 0.107, 0], + "ti": [-0.066, -0.094, 0] + }, + { + "i": {"x": 0.833, "y": 0.943}, + "o": {"x": 0.167, "y": 0.064}, + "t": 38.4, + "s": [170.43, 193.661, 0], + "to": [0.066, 0.094, 0], + "ti": [-0.064, -0.077, 0] + }, + { + "i": {"x": 0.833, "y": 0.929}, + "o": {"x": 0.167, "y": 0.083}, + "t": 39.2, + "s": [170.626, 193.92, 0], + "to": [0.064, 0.077, 0], + "ti": [-0.062, -0.058, 0] + }, + { + "i": {"x": 0.833, "y": 0.907}, + "o": {"x": 0.167, "y": 0.113}, + "t": 40, + "s": [170.816, 194.125, 0], + "to": [0.062, 0.058, 0], + "ti": [-0.059, -0.037, 0] + }, + { + "i": {"x": 0.833, "y": 0.872}, + "o": {"x": 0.167, "y": 0.152}, + "t": 40.8, + "s": [170.999, 194.269, 0], + "to": [0.059, 0.037, 0], + "ti": [-0.056, -0.014, 0] + }, + { + "i": {"x": 0.833, "y": 0.834}, + "o": {"x": 0.167, "y": 0.177}, + "t": 41.6, + "s": [171.172, 194.347, 0], + "to": [0.056, 0.014, 0], + "ti": [-0.052, 0.01, 0] + }, + { + "i": {"x": 0.833, "y": 0.851}, + "o": {"x": 0.167, "y": 0.134}, + "t": 42.4, + "s": [171.335, 194.353, 0], + "to": [0.052, -0.01, 0], + "ti": [-0.048, 0.036, 0] + }, + { + "i": {"x": 0.833, "y": 0.913}, + "o": {"x": 0.167, "y": 0.071}, + "t": 43.2, + "s": [171.485, 194.284, 0], + "to": [0.048, -0.036, 0], + "ti": [-0.043, 0.061, 0] + }, + { + "i": {"x": 0.833, "y": 0.957}, + "o": {"x": 0.167, "y": 0.034}, + "t": 44, + "s": [171.621, 194.138, 0], + "to": [0.043, -0.061, 0], + "ti": [-0.038, 0.087, 0] + }, + { + "i": {"x": 0.833, "y": 0.979}, + "o": {"x": 0.167, "y": 0.017}, + "t": 44.8, + "s": [171.743, 193.915, 0], + "to": [0.038, -0.087, 0], + "ti": [-0.033, 0.112, 0] + }, + { + "i": {"x": 0.833, "y": 0.99}, + "o": {"x": 0.167, "y": 0.009}, + "t": 45.6, + "s": [171.851, 193.615, 0], + "to": [0.033, -0.112, 0], + "ti": [-0.028, 0.137, 0] + }, + { + "i": {"x": 0.833, "y": 0.995}, + "o": {"x": 0.167, "y": 0.004}, + "t": 46.4, + "s": [171.943, 193.241, 0], + "to": [0.028, -0.137, 0], + "ti": [-0.013, 0.074, 0] + }, + {"t": 47.2001953125, "s": [172.02, 192.796, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.05, 0.926, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 4.8, + "s": [113.755, 94.294, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.873, 0.225, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.031, -0.702, 0]}, + "t": 5.6, + "s": [142.324, 42.5, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.888, 0.932, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.241, 0.093, 0]}, + "t": 6.4, + "s": [96.482, 48.003, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.204, 0.806, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.325, -0.366, 0]}, + "t": 7.2, + "s": [72.3, 93.591, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.921, 0.58, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.059, 0.146, 0]}, + "t": 8, + "s": [63.951, 85.144, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.459, 0.97, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.529, 0.104, 0]}, + "t": 8.8, + "s": [92.765, 73.936, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.995, 0.876, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.088, -0.048, 0]}, + "t": 9.6, + "s": [91.276, 28.604, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.992, 1.032, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.006, 0.254, 0]}, + "t": 10.4, + "s": [66.684, 57.392, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.995, 1.013, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.008, 0.023, 0]}, + "t": 11.2, + "s": [89.679, 71.451, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.731, 0.864, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.005, 0.012, 0]}, + "t": 12, + "s": [68.777, 51.94, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.035, 0.702, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.121, 0.214, 0]}, + "t": 12.8, + "s": [88.421, 74.596, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.935, 0.98, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.025, 0.116, 0]}, + "t": 13.6, + "s": [132.23, 89.048, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.575, 0.845, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.305, -0.027, 0]}, + "t": 14.4, + "s": [69.974, 126.315, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.931, 0.98, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.104, 0.18, 0]}, + "t": 15.2, + "s": [83.338, 98.135, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.313, 0.783, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.391, -0.026, 0]}, + "t": 16, + "s": [138.117, 73.778, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.993, 0.847, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.095, 0.135, 0]}, + "t": 16.8, + "s": [128.488, 92.265, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.953, 1.145, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.008, 0.183, 0]}, + "t": 17.6, + "s": [58.681, 121.955, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.815, 0.916, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.109, 0.053, 0]}, + "t": 18.4, + "s": [122.512, 146.761, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.991, 5.115, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.152, 17.281, 0]}, + "t": 19.2, + "s": [94.854, 78.682, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.02, 1.177, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.01, 0.082, 0]}, + "t": 20, + "s": [61.077, 78.352, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.963, 1.017, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.016, 0.057, 0]}, + "t": 20.8, + "s": [91.084, 94.97, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.849, 0.969, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.068, 0.014, 0]}, + "t": 21.6, + "s": [53.825, 43.095, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.888, 0.893, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.186, -0.051, 0]}, + "t": 22.4, + "s": [74.356, 105.62, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.814, 1.146, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.324, 0.371, 0]}, + "t": 23.2, + "s": [91.09, 66.721, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.498, 0.904, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.151, 0.053, 0]}, + "t": 24, + "s": [96.876, 55.445, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.992, 1.823, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.071, 0.645, 0]}, + "t": 24.8, + "s": [104.026, 86.476, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.986, 0.931, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.009, 0.076, 0]}, + "t": 25.6, + "s": [54.137, 91.081, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.906, 0.944, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.017, -0.393, 0]}, + "t": 26.4, + "s": [99.353, 40.985, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.666, 0.653, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.764, -0.167, 0]}, + "t": 27.2, + "s": [61.794, 49.744, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.993, 0.855, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.074, 0.11, 0]}, + "t": 28, + "s": [57.194, 46.834, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.011, 1.186, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.008, 0.195, 0]}, + "t": 28.8, + "s": [98.549, 37.625, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.007, 1.031, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.009, 0.058, 0]}, + "t": 29.6, + "s": [60.683, 30.783, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.882, 0.935, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.007, 0.023, 0]}, + "t": 30.4, + "s": [103.351, 52.891, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.098, 0.657, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.282, -0.288, 0]}, + "t": 31.2, + "s": [56.948, 22.459, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.953, 0.83, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.045, 0.11, 0]}, + "t": 32, + "s": [37.48, 29.284, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.913, 0.986, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.106, 0.164, 0]}, + "t": 32.8, + "s": [79.938, 50.562, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-5.823, 1.008, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.806, -0.017, 0]}, + "t": 33.6, + "s": [61.287, 72.597, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.946, 1.042, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.084, 0.008, 0]}, + "t": 34.4, + "s": [60.383, 54.282, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.87, 0.901, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.155, 0.028, 0]}, + "t": 35.2, + "s": [-12.609, 74.447, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.795, 0.974, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.231, 0.53, 0]}, + "t": 36, + "s": [12.933, 44.106, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.094, 1.748, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.141, -0.037, 0]}, + "t": 36.8, + "s": [27.371, 38.441, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.924, 0.881, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.044, 0.075, 0]}, + "t": 37.6, + "s": [48.387, 42.359, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.231, 0.927, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.898, 0.279, 0]}, + "t": 38.4, + "s": [3.703, 3.258, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.188, -0.77, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.061, -0.58, 0]}, + "t": 39.2, + "s": [7.498, -13.404, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.899, 0.864, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.058, 0.087, 0]}, + "t": 40, + "s": [-6.825, -11.313, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.382, 0.894, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.485, 0.214, 0]}, + "t": 40.8, + "s": [39.727, 31.017, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.967, 1.573, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.068, 0.386, 0]}, + "t": 41.6, + "s": [49.384, 58.012, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.795, 0.914, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.055, 0.073, 0]}, + "t": 42.4, + "s": [-4.528, 65.442, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.999, 1.691, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.141, 3.172, 0]}, + "t": 43.2, + "s": [27.852, 6.982, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.947, 0.907, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.001, 0.074, 0]}, + "t": 44, + "s": [75.027, 5.405, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.867, 0.463, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.146, 0.773, 0]}, + "t": 44.8, + "s": [28.477, 20.053, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.164, 1.39, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.224, 0.099, 0]}, + "t": 45.6, + "s": [45.412, 21.822, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.055, 0.069, 0]}, + "t": 46.4, + "s": [55.436, 31.442, 100] + }, + {"t": 47.2001953125, "s": [25.653, -23.168, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ty": "sr", + "sy": 2, + "d": 1, + "pt": {"a": 0, "k": 3, "ix": 3}, + "p": {"a": 0, "k": [6, 32], "ix": 4}, + "r": {"a": 0, "k": 0, "ix": 5}, + "or": {"a": 0, "k": 6.599, "ix": 7}, + "os": {"a": 0, "k": 0, "ix": 9}, + "ix": 1, + "nm": "Polystar Path 1", + "mn": "ADBE Vector Shape - Star", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [0.313725501299, 0.890196084976, 0.760784327984, 1], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-7.382, -25.677], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Polystar 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 4.7998046875, + "op": 48, + "st": 4.7998046875, + "bm": 0 + }, + { + "ddd": 0, + "ind": 33, + "ty": 4, + "nm": "Shape Layer 19", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 8.8, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 12.8, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 30.4, + "s": [100] + }, + {"t": 43.2001953125, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 0, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 0.528}, + "o": {"x": 0.167, "y": 0.161}, + "t": 8.8, + "s": [273.717, 253.598, 0], + "to": [0.28, -0.028, 0], + "ti": [-1.664, -0.082, 0] + }, + { + "i": {"x": 0.833, "y": 0.761}, + "o": {"x": 0.167, "y": 0.1}, + "t": 9.6, + "s": [275.395, 253.428, 0], + "to": [1.664, 0.082, 0], + "ti": [-3.922, -0.767, 0] + }, + { + "i": {"x": 0.833, "y": 0.835}, + "o": {"x": 0.167, "y": 0.119}, + "t": 10.4, + "s": [283.7, 254.091, 0], + "to": [3.922, 0.767, 0], + "ti": [-5.158, -1.975, 0] + }, + { + "i": {"x": 0.833, "y": 0.876}, + "o": {"x": 0.167, "y": 0.126}, + "t": 11.2, + "s": [298.929, 258.033, 0], + "to": [5.158, 1.975, 0], + "ti": [-4.6, -2.946, 0] + }, + { + "i": {"x": 0.833, "y": 0.909}, + "o": {"x": 0.167, "y": 0.106}, + "t": 12, + "s": [314.649, 265.939, 0], + "to": [4.6, 2.946, 0], + "ti": [-3.328, -3.296, 0] + }, + { + "i": {"x": 0.833, "y": 0.939}, + "o": {"x": 0.167, "y": 0.072}, + "t": 12.8, + "s": [326.529, 275.709, 0], + "to": [3.328, 3.296, 0], + "ti": [-2.233, -3.252, 0] + }, + { + "i": {"x": 0.833, "y": 0.963}, + "o": {"x": 0.167, "y": 0.043}, + "t": 13.6, + "s": [334.618, 285.714, 0], + "to": [2.233, 3.252, 0], + "ti": [-1.455, -3.046, 0] + }, + { + "i": {"x": 0.833, "y": 0.979}, + "o": {"x": 0.167, "y": 0.024}, + "t": 14.4, + "s": [339.929, 295.223, 0], + "to": [1.455, 3.046, 0], + "ti": [-0.931, -2.79, 0] + }, + { + "i": {"x": 0.833, "y": 0.989}, + "o": {"x": 0.167, "y": 0.012}, + "t": 15.2, + "s": [343.35, 303.988, 0], + "to": [0.931, 2.79, 0], + "ti": [-0.582, -2.533, 0] + }, + { + "i": {"x": 0.833, "y": 0.995}, + "o": {"x": 0.167, "y": 0.006}, + "t": 16, + "s": [345.513, 311.964, 0], + "to": [0.582, 2.533, 0], + "ti": [-0.353, -2.293, 0] + }, + { + "i": {"x": 0.833, "y": 0.998}, + "o": {"x": 0.167, "y": 0.003}, + "t": 16.8, + "s": [346.843, 319.188, 0], + "to": [0.353, 2.293, 0], + "ti": [-0.205, -2.077, 0] + }, + { + "i": {"x": 0.833, "y": 0.999}, + "o": {"x": 0.167, "y": 0.001}, + "t": 17.6, + "s": [347.63, 325.723, 0], + "to": [0.205, 2.077, 0], + "ti": [-0.115, -1.887, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [348.075, 331.651, 0], + "to": [0.115, 1.887, 0], + "ti": [-0.064, -1.719, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [348.319, 337.046, 0], + "to": [0.064, 1.719, 0], + "ti": [-0.041, -1.573, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20, + "s": [348.461, 341.968, 0], + "to": [0.041, 1.573, 0], + "ti": [-0.028, -1.452, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [348.564, 346.482, 0], + "to": [0.028, 1.452, 0], + "ti": [-0.019, -1.351, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 21.6, + "s": [348.628, 350.68, 0], + "to": [0.019, 1.351, 0], + "ti": [-0.016, -1.256, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 22.4, + "s": [348.676, 354.586, 0], + "to": [0.016, 1.256, 0], + "ti": [-0.018, -1.167, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 23.2, + "s": [348.724, 358.218, 0], + "to": [0.018, 1.167, 0], + "ti": [-0.022, -1.082, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24, + "s": [348.783, 361.589, 0], + "to": [0.022, 1.082, 0], + "ti": [-0.029, -1, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24.8, + "s": [348.858, 364.71, 0], + "to": [0.029, 1, 0], + "ti": [-0.036, -0.921, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 25.6, + "s": [348.955, 367.59, 0], + "to": [0.036, 0.921, 0], + "ti": [-0.043, -0.844, 0] + }, + { + "i": {"x": 0.833, "y": 0.999}, + "o": {"x": 0.167, "y": 0.001}, + "t": 26.4, + "s": [349.073, 370.236, 0], + "to": [0.043, 0.844, 0], + "ti": [-0.05, -0.768, 0] + }, + { + "i": {"x": 0.833, "y": 0.999}, + "o": {"x": 0.167, "y": 0.001}, + "t": 27.2, + "s": [349.212, 372.652, 0], + "to": [0.05, 0.768, 0], + "ti": [-0.056, -0.694, 0] + }, + { + "i": {"x": 0.833, "y": 0.999}, + "o": {"x": 0.167, "y": 0.001}, + "t": 28, + "s": [349.372, 374.845, 0], + "to": [0.056, 0.694, 0], + "ti": [-0.062, -0.622, 0] + }, + { + "i": {"x": 0.833, "y": 0.998}, + "o": {"x": 0.167, "y": 0.002}, + "t": 28.8, + "s": [349.55, 376.819, 0], + "to": [0.062, 0.622, 0], + "ti": [-0.067, -0.551, 0] + }, + { + "i": {"x": 0.833, "y": 0.997}, + "o": {"x": 0.167, "y": 0.003}, + "t": 29.6, + "s": [349.743, 378.577, 0], + "to": [0.067, 0.551, 0], + "ti": [-0.07, -0.481, 0] + }, + { + "i": {"x": 0.833, "y": 0.996}, + "o": {"x": 0.167, "y": 0.004}, + "t": 30.4, + "s": [349.95, 380.124, 0], + "to": [0.07, 0.481, 0], + "ti": [-0.073, -0.413, 0] + }, + { + "i": {"x": 0.833, "y": 0.994}, + "o": {"x": 0.167, "y": 0.007}, + "t": 31.2, + "s": [350.166, 381.464, 0], + "to": [0.073, 0.413, 0], + "ti": [-0.075, -0.348, 0] + }, + { + "i": {"x": 0.833, "y": 0.992}, + "o": {"x": 0.167, "y": 0.01}, + "t": 32, + "s": [350.389, 382.603, 0], + "to": [0.075, 0.348, 0], + "ti": [-0.075, -0.284, 0] + }, + { + "i": {"x": 0.833, "y": 0.988}, + "o": {"x": 0.167, "y": 0.015}, + "t": 32.8, + "s": [350.614, 383.549, 0], + "to": [0.075, 0.284, 0], + "ti": [-0.075, -0.222, 0] + }, + { + "i": {"x": 0.833, "y": 0.981}, + "o": {"x": 0.167, "y": 0.024}, + "t": 33.6, + "s": [350.84, 384.306, 0], + "to": [0.075, 0.222, 0], + "ti": [-0.073, -0.163, 0] + }, + { + "i": {"x": 0.833, "y": 0.968}, + "o": {"x": 0.167, "y": 0.044}, + "t": 34.4, + "s": [351.062, 384.882, 0], + "to": [0.073, 0.163, 0], + "ti": [-0.071, -0.106, 0] + }, + { + "i": {"x": 0.833, "y": 0.939}, + "o": {"x": 0.167, "y": 0.088}, + "t": 35.2, + "s": [351.279, 385.285, 0], + "to": [0.071, 0.106, 0], + "ti": [-0.068, -0.053, 0] + }, + { + "i": {"x": 0.833, "y": 0.867}, + "o": {"x": 0.167, "y": 0.17}, + "t": 36, + "s": [351.487, 385.521, 0], + "to": [0.068, 0.053, 0], + "ti": [-0.064, -0.002, 0] + }, + { + "i": {"x": 0.833, "y": 0.835}, + "o": {"x": 0.167, "y": 0.148}, + "t": 36.8, + "s": [351.685, 385.601, 0], + "to": [0.064, 0.002, 0], + "ti": [-0.059, 0.045, 0] + }, + { + "i": {"x": 0.833, "y": 0.919}, + "o": {"x": 0.167, "y": 0.06}, + "t": 37.6, + "s": [351.87, 385.535, 0], + "to": [0.059, -0.045, 0], + "ti": [-0.054, 0.088, 0] + }, + { + "i": {"x": 0.833, "y": 0.965}, + "o": {"x": 0.167, "y": 0.027}, + "t": 38.4, + "s": [352.04, 385.333, 0], + "to": [0.054, -0.088, 0], + "ti": [-0.049, 0.127, 0] + }, + { + "i": {"x": 0.833, "y": 0.984}, + "o": {"x": 0.167, "y": 0.013}, + "t": 39.2, + "s": [352.195, 385.007, 0], + "to": [0.049, -0.127, 0], + "ti": [-0.043, 0.161, 0] + }, + { + "i": {"x": 0.833, "y": 0.992}, + "o": {"x": 0.167, "y": 0.007}, + "t": 40, + "s": [352.331, 384.571, 0], + "to": [0.043, -0.161, 0], + "ti": [-0.035, 0.185, 0] + }, + { + "i": {"x": 0.833, "y": 0.996}, + "o": {"x": 0.167, "y": 0.004}, + "t": 40.8, + "s": [352.45, 384.039, 0], + "to": [0.035, -0.185, 0], + "ti": [-0.024, 0.192, 0] + }, + { + "i": {"x": 0.833, "y": 0.998}, + "o": {"x": 0.167, "y": 0.002}, + "t": 41.6, + "s": [352.541, 383.461, 0], + "to": [0.024, -0.192, 0], + "ti": [-0.013, 0.188, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 42.4, + "s": [352.596, 382.887, 0], + "to": [0.013, -0.188, 0], + "ti": [-0.001, 0.179, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 43.2, + "s": [352.617, 382.333, 0], + "to": [0.001, -0.179, 0], + "ti": [0.007, 0.165, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44, + "s": [352.603, 381.814, 0], + "to": [-0.007, -0.165, 0], + "ti": [0.003, 0.149, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44.8, + "s": [352.574, 381.345, 0], + "to": [-0.003, -0.149, 0], + "ti": [-0.011, 0.133, 0] + }, + { + "i": {"x": 0.833, "y": 0.997}, + "o": {"x": 0.167, "y": 0.003}, + "t": 45.6, + "s": [352.587, 380.922, 0], + "to": [0.011, -0.133, 0], + "ti": [-0.023, 0.117, 0] + }, + { + "i": {"x": 0.833, "y": 0.989}, + "o": {"x": 0.167, "y": 0.011}, + "t": 46.4, + "s": [352.639, 380.546, 0], + "to": [0.023, -0.117, 0], + "ti": [-0.014, 0.055, 0] + }, + {"t": 47.2001953125, "s": [352.724, 380.217, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.45, -1.621, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 8.8, + "s": [64.676, 29.575, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.851, 0.952, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.079, 0.086, 0]}, + "t": 9.6, + "s": [63.619, 31.654, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.096, 0.849, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.189, -0.115, 0]}, + "t": 10.4, + "s": [83.082, 94.984, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.044, 1.052, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.045, 0.186, 0]}, + "t": 11.2, + "s": [98.428, 68.346, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.951, 0.791, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.029, 0.032, 0]}, + "t": 12, + "s": [65.326, 46.692, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.846, 0.999, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.117, 0.139, 0]}, + "t": 12.8, + "s": [115.976, 81.786, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.191, 0.9, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.181, -0.001, 0]}, + "t": 13.6, + "s": [94.867, 134.538, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.903, 1.096, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.058, 0.505, 0]}, + "t": 14.4, + "s": [76.907, 82.463, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.592, 0.774, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.576, 0.045, 0]}, + "t": 15.2, + "s": [136.087, 72.163, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.95, 0.874, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.073, 0.132, 0]}, + "t": 16, + "s": [146.093, 94.38, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.84, 1.06, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.126, 0.245, 0]}, + "t": 16.8, + "s": [64.998, 132.461, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.163, 0.877, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.174, 0.035, 0]}, + "t": 17.6, + "s": [97.241, 152.104, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.936, 0.874, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.055, 0.259, 0]}, + "t": 18.4, + "s": [126.81, 118.253, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.87, 0.449, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.273, 0.246, 0]}, + "t": 19.2, + "s": [39.419, 102.155, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.013, 0.912, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.231, 0.098, 0]}, + "t": 20, + "s": [59.845, 93.89, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.068, 2.263, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.011, 1.504, 0]}, + "t": 20.8, + "s": [71.34, 47.538, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.87, 0.951, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.037, 0.078, 0]}, + "t": 21.6, + "s": [58.098, 44.818, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.848, 0.781, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.234, -0.119, 0]}, + "t": 22.4, + "s": [82.135, 88.74, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.37, 1.069, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.185, 0.135, 0]}, + "t": 23.2, + "s": [95.452, 70.689, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.991, 0.946, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.068, 0.038, 0]}, + "t": 24, + "s": [106.399, 41.339, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.931, 0.784, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.01, -0.156, 0]}, + "t": 24.8, + "s": [46.837, 95.066, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.867, 0.989, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.417, 0.136, 0]}, + "t": 25.6, + "s": [100.241, 76.371, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.202, 0.986, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.224, -0.013, 0]}, + "t": 26.4, + "s": [91.348, 46.624, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.962, 0.96, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.059, -0.017, 0]}, + "t": 27.2, + "s": [86.082, 72.273, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.193, 0.684, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.069, -0.076, 0]}, + "t": 28, + "s": [104.113, 51.031, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.964, 0.99, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.058, 0.113, 0]}, + "t": 28.8, + "s": [94.281, 62.125, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.717, 0.85, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.063, -0.012, 0]}, + "t": 29.6, + "s": [126.942, 93.089, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.99, 0.934, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.118, 0.187, 0]}, + "t": 30.4, + "s": [108.331, 65.944, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.969, 0.494, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.012, -0.318, 0]}, + "t": 31.2, + "s": [63.723, 44.138, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.947, 0.903, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.049, 0.1, 0]}, + "t": 32, + "s": [102.921, 48.671, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.464, 0.113, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.147, 0.604, 0]}, + "t": 32.8, + "s": [78.268, 71.671, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.902, 1.068, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.071, 0.092, 0]}, + "t": 33.6, + "s": [87.176, 75.352, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.234, 0.908, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.554, 0.037, 0]}, + "t": 34.4, + "s": [28.705, 110.854, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.845, 1.441, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.061, 0.901, 0]}, + "t": 35.2, + "s": [18.357, 46.477, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.091, 0.982, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.181, 0.07, 0]}, + "t": 36, + "s": [57.758, 39.913, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.948, 0.801, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.044, -0.023, 0]}, + "t": 36.8, + "s": [91.489, 81.222, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.953, 0.932, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.137, 0.143, 0]}, + "t": 37.6, + "s": [20.878, 48.853, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.976, 0.994, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.108, -0.379, 0]}, + "t": 38.4, + "s": [47.568, 3.824, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.831, 1.042, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.035, -0.006, 0]}, + "t": 39.2, + "s": [35.966, 11.947, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.412, 0.592, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.165, 0.028, 0]}, + "t": 40, + "s": [44.168, 4.41, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.937, 0.978, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.069, 0.105, 0]}, + "t": 40.8, + "s": [52.575, 15.778, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.453, 0.926, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.254, -0.03, 0]}, + "t": 41.6, + "s": [2.557, 60.137, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.959, 1.407, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.098, -0.624, 0]}, + "t": 42.4, + "s": [14.899, 27.604, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.849, 1.066, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.082, 0.069, 0]}, + "t": 43.2, + "s": [83.445, 31.436, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.046, 0.934, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.186, 0.037, 0]}, + "t": 44, + "s": [48.803, 8.908, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.963, 0.694, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.03, -0.323, 0]}, + "t": 44.8, + "s": [20.805, 49.183, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.959, 0.832, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.065, 0.115, 0]}, + "t": 45.6, + "s": [64.315, 40.919, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.079, 0.165, 0]}, + "t": 46.4, + "s": [39.92, 18.864, 100] + }, + {"t": 47.2001953125, "s": [52.411, -3.555, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ty": "sr", + "sy": 2, + "d": 1, + "pt": {"a": 0, "k": 3, "ix": 3}, + "p": {"a": 0, "k": [6, 32], "ix": 4}, + "r": {"a": 0, "k": 0, "ix": 5}, + "or": {"a": 0, "k": 6.599, "ix": 7}, + "os": {"a": 0, "k": 0, "ix": 9}, + "ix": 1, + "nm": "Polystar Path 1", + "mn": "ADBE Vector Shape - Star", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [0.167325377464, 0.716982424259, 1, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-7.382, -25.677], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Polystar 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 8.7998046875, + "op": 48, + "st": 8.7998046875, + "bm": 0 + }, + { + "ddd": 0, + "ind": 34, + "ty": 4, + "nm": "Shape Layer 18", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 9.6, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 13.6, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 31.2, + "s": [100] + }, + {"t": 44, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 0, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [267.865, 255.269, 0], + "to": [-0.161, -0.402, 0], + "ti": [1.026, 2.138, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 10.4, + "s": [266.901, 252.858, 0], + "to": [-1.026, -2.138, 0], + "ti": [2.899, 4.739, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 11.2, + "s": [261.706, 242.443, 0], + "to": [-2.899, -4.739, 0], + "ti": [4.94, 5.799, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12, + "s": [249.506, 224.427, 0], + "to": [-4.94, -5.799, 0], + "ti": [5.963, 4.5, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12.8, + "s": [232.069, 207.647, 0], + "to": [-5.963, -4.5, 0], + "ti": [5.888, 2.374, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 13.6, + "s": [213.727, 197.425, 0], + "to": [-5.888, -2.374, 0], + "ti": [5.276, 0.563, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 14.4, + "s": [196.743, 193.401, 0], + "to": [-5.276, -0.563, 0], + "ti": [4.452, -0.741, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 15.2, + "s": [182.074, 194.046, 0], + "to": [-4.452, 0.741, 0], + "ti": [3.589, -1.577, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16, + "s": [170.029, 197.845, 0], + "to": [-3.589, 1.577, 0], + "ti": [2.794, -2.037, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16.8, + "s": [160.537, 203.508, 0], + "to": [-2.794, 2.037, 0], + "ti": [2.125, -2.229, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 17.6, + "s": [153.265, 210.066, 0], + "to": [-2.125, 2.229, 0], + "ti": [1.595, -2.253, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [147.784, 216.885, 0], + "to": [-1.595, 2.253, 0], + "ti": [1.188, -2.18, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [143.692, 223.586, 0], + "to": [-1.188, 2.18, 0], + "ti": [0.88, -2.056, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20, + "s": [140.657, 229.963, 0], + "to": [-0.88, 2.056, 0], + "ti": [0.65, -1.912, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [138.413, 235.924, 0], + "to": [-0.65, 1.912, 0], + "ti": [0.477, -1.76, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 21.6, + "s": [136.76, 241.434, 0], + "to": [-0.477, 1.76, 0], + "ti": [0.347, -1.607, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 22.4, + "s": [135.553, 246.481, 0], + "to": [-0.347, 1.607, 0], + "ti": [0.25, -1.458, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 23.2, + "s": [134.678, 251.075, 0], + "to": [-0.25, 1.458, 0], + "ti": [0.178, -1.316, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24, + "s": [134.053, 255.23, 0], + "to": [-0.178, 1.316, 0], + "ti": [0.125, -1.182, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24.8, + "s": [133.611, 258.969, 0], + "to": [-0.125, 1.182, 0], + "ti": [0.088, -1.057, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 25.6, + "s": [133.302, 262.321, 0], + "to": [-0.088, 1.057, 0], + "ti": [0.062, -0.942, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26.4, + "s": [133.085, 265.313, 0], + "to": [-0.062, 0.942, 0], + "ti": [0.045, -0.835, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 27.2, + "s": [132.931, 267.971, 0], + "to": [-0.045, 0.835, 0], + "ti": [0.035, -0.737, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28, + "s": [132.816, 270.322, 0], + "to": [-0.035, 0.737, 0], + "ti": [0.031, -0.648, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28.8, + "s": [132.72, 272.392, 0], + "to": [-0.031, 0.648, 0], + "ti": [0.031, -0.567, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 29.6, + "s": [132.63, 274.209, 0], + "to": [-0.031, 0.567, 0], + "ti": [0.035, -0.496, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 30.4, + "s": [132.533, 275.797, 0], + "to": [-0.035, 0.496, 0], + "ti": [0.04, -0.432, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 31.2, + "s": [132.422, 277.182, 0], + "to": [-0.04, 0.432, 0], + "ti": [0.043, -0.377, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32, + "s": [132.291, 278.392, 0], + "to": [-0.043, 0.377, 0], + "ti": [0.036, -0.328, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [132.166, 279.447, 0], + "to": [-0.036, 0.328, 0], + "ti": [0.026, -0.282, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [132.075, 280.359, 0], + "to": [-0.026, 0.282, 0], + "ti": [0.017, -0.24, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [132.011, 281.139, 0], + "to": [-0.017, 0.24, 0], + "ti": [0.01, -0.201, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 35.2, + "s": [131.972, 281.799, 0], + "to": [-0.01, 0.201, 0], + "ti": [0.003, -0.166, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36, + "s": [131.954, 282.347, 0], + "to": [-0.003, 0.166, 0], + "ti": [-0.002, -0.133, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36.8, + "s": [131.953, 282.792, 0], + "to": [0.002, 0.133, 0], + "ti": [-0.007, -0.102, 0] + }, + { + "i": {"x": 0.833, "y": 0.998}, + "o": {"x": 0.167, "y": 0.002}, + "t": 37.6, + "s": [131.967, 283.142, 0], + "to": [0.007, 0.102, 0], + "ti": [-0.011, -0.073, 0] + }, + { + "i": {"x": 0.833, "y": 0.994}, + "o": {"x": 0.167, "y": 0.009}, + "t": 38.4, + "s": [131.994, 283.403, 0], + "to": [0.011, 0.073, 0], + "ti": [-0.014, -0.046, 0] + }, + { + "i": {"x": 0.833, "y": 0.975}, + "o": {"x": 0.167, "y": 0.042}, + "t": 39.2, + "s": [132.031, 283.58, 0], + "to": [0.014, 0.046, 0], + "ti": [-0.017, -0.02, 0] + }, + { + "i": {"x": 0.833, "y": 0.856}, + "o": {"x": 0.167, "y": 0.175}, + "t": 40, + "s": [132.078, 283.677, 0], + "to": [0.017, 0.02, 0], + "ti": [-0.019, 0.004, 0] + }, + { + "i": {"x": 0.833, "y": 0.89}, + "o": {"x": 0.167, "y": 0.089}, + "t": 40.8, + "s": [132.132, 283.7, 0], + "to": [0.019, -0.004, 0], + "ti": [-0.021, 0.02, 0] + }, + { + "i": {"x": 0.833, "y": 0.925}, + "o": {"x": 0.167, "y": 0.074}, + "t": 41.6, + "s": [132.193, 283.651, 0], + "to": [0.021, -0.02, 0], + "ti": [-0.023, 0.018, 0] + }, + { + "i": {"x": 0.833, "y": 0.876}, + "o": {"x": 0.167, "y": 0.137}, + "t": 42.4, + "s": [132.259, 283.583, 0], + "to": [0.023, -0.018, 0], + "ti": [-0.025, 0.008, 0] + }, + { + "i": {"x": 0.833, "y": 0.834}, + "o": {"x": 0.167, "y": 0.168}, + "t": 43.2, + "s": [132.331, 283.544, 0], + "to": [0.025, -0.008, 0], + "ti": [-0.026, 0, 0] + }, + { + "i": {"x": 0.833, "y": 0.832}, + "o": {"x": 0.167, "y": 0.16}, + "t": 44, + "s": [132.408, 283.533, 0], + "to": [0.026, 0, 0], + "ti": [-0.027, -0.008, 0] + }, + { + "i": {"x": 0.833, "y": 0.853}, + "o": {"x": 0.167, "y": 0.135}, + "t": 44.8, + "s": [132.487, 283.545, 0], + "to": [0.027, 0.008, 0], + "ti": [-0.027, -0.014, 0] + }, + { + "i": {"x": 0.833, "y": 0.877}, + "o": {"x": 0.167, "y": 0.114}, + "t": 45.6, + "s": [132.568, 283.579, 0], + "to": [0.027, 0.014, 0], + "ti": [-0.027, -0.019, 0] + }, + { + "i": {"x": 0.833, "y": 0.9}, + "o": {"x": 0.167, "y": 0.096}, + "t": 46.4, + "s": [132.649, 283.63, 0], + "to": [0.027, 0.019, 0], + "ti": [-0.013, -0.011, 0] + }, + {"t": 47.2001953125, "s": [132.728, 283.695, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.085, 2.344, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 9.6, + "s": [95.923, 97.698, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.959, 0.958, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.042, 0.078, 0]}, + "t": 10.4, + "s": [119.853, 100.809, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.846, 0.754, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.082, -0.083, 0]}, + "t": 11.2, + "s": [71.61, 47.548, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.108, 0.987, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.182, 0.126, 0]}, + "t": 12, + "s": [95.909, 74.187, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.971, 0.88, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.047, -0.015, 0]}, + "t": 12.8, + "s": [116.529, 126.213, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.765, 1.081, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.046, 0.272, 0]}, + "t": 13.6, + "s": [69.282, 82.296, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.014, 0.826, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.129, 0.041, 0]}, + "t": 14.4, + "s": [99.804, 62.944, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.925, 0.917, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.012, 0.16, 0]}, + "t": 15.2, + "s": [155.455, 101.204, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.797, -29.807, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.787, 623.374, 0]}, + "t": 16, + "s": [90.335, 142.892, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.16, 1.74, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.141, 0.084, 0]}, + "t": 16.8, + "s": [96.569, 142.898, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.834, 0.902, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.055, 0.075, 0]}, + "t": 17.6, + "s": [105.516, 144.953, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.994, 0.309, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.168, 0.547, 0]}, + "t": 18.4, + "s": [79.375, 124.659, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.849, 0.77, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.007, 0.095, 0]}, + "t": 19.2, + "s": [53.599, 121.011, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.006, 0.971, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.187, 0.131, 0]}, + "t": 20, + "s": [77.44, 94.418, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.991, 0.812, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.006, -0.044, 0]}, + "t": 20.8, + "s": [96.658, 47.588, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.869, 1.081, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.01, 0.15, 0]}, + "t": 21.6, + "s": [75.964, 78.236, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.159, 0.966, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.23, 0.041, 0]}, + "t": 22.4, + "s": [94.431, 116.596, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.918, 0.82, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.055, -0.058, 0]}, + "t": 23.2, + "s": [104.908, 41.132, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-2.161, 1.012, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-4.519, 0.155, 0]}, + "t": 24, + "s": [74.497, 85.65, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.955, 0.956, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.086, 0.011, 0]}, + "t": 24.8, + "s": [75.047, 137.348, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.922, 1.056, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.097, -0.092, 0]}, + "t": 25.6, + "s": [95.389, 78.111, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [3.563, 0.949, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.248, 0.034, 0]}, + "t": 26.4, + "s": [85.987, 106.338, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.138, 0.755, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.081, -0.133, 0]}, + "t": 27.2, + "s": [86.576, 59.064, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.92, 0.905, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.052, 0.126, 0]}, + "t": 28, + "s": [67.887, 77.283, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.048, 1.699, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.951, 0.69, 0]}, + "t": 28.8, + "s": [117.559, 112.652, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.968, 0.892, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.091, 0.074, 0]}, + "t": 29.6, + "s": [115.524, 117.508, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.028, 0.868, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.052, 0.361, 0]}, + "t": 30.4, + "s": [94.322, 71.923, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.911, 0.982, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.021, 0.226, 0]}, + "t": 31.2, + "s": [107.41, 58.262, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-1.312, 0.689, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.225, -0.022, 0]}, + "t": 32, + "s": [89.918, 50.26, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.885, 0.965, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.086, 0.114, 0]}, + "t": 32.8, + "s": [88.641, 56.58, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.028, 0.485, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.303, -0.061, 0]}, + "t": 33.6, + "s": [54.485, 73.842, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.806, 1.029, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.021, 0.099, 0]}, + "t": 34.4, + "s": [41.537, 63.86, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.052, 0.898, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.146, 0.021, 0]}, + "t": 35.2, + "s": [58.89, 12.33, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.928, 1.279, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.032, 0.455, 0]}, + "t": 36, + "s": [81.867, 81.726, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.858, 0.905, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.543, 0.064, 0]}, + "t": 36.8, + "s": [44.5, 97.298, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.018, 0.916, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.202, 0.657, 0]}, + "t": 37.6, + "s": [49.475, 29.648, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.415, -65.862, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.015, 34.689, 0]}, + "t": 38.4, + "s": [52.978, 19.812, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.126, 1.189, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.069, 0.083, 0]}, + "t": 39.2, + "s": [48.737, 19.789, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.939, 0.939, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.05, 0.058, 0]}, + "t": 40, + "s": [74.095, 0.809, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.788, 1.031, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.229, -0.233, 0]}, + "t": 40.8, + "s": [10.268, 62.842, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.913, 1.141, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.137, 0.023, 0]}, + "t": 41.6, + "s": [27.318, 46.475, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [3.587, 0.962, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [2.211, 0.052, 0]}, + "t": 42.4, + "s": [53.611, 68.98, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.93, 0.969, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.081, -0.069, 0]}, + "t": 43.2, + "s": [54.64, 8.452, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.974, 0.937, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.428, -0.05, 0]}, + "t": 44, + "s": [21.647, 41.626, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.031, 0.906, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.037, -0.251, 0]}, + "t": 44.8, + "s": [27.025, 20.873, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.011, 0.233, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.023, 0.728, 0]}, + "t": 45.6, + "s": [23.296, 26.051, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.01, 0.093, 0]}, + "t": 46.4, + "s": [28.415, 26.722, 100] + }, + {"t": 47.2001953125, "s": [22.608, 32.219, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ty": "sr", + "sy": 2, + "d": 1, + "pt": {"a": 0, "k": 3, "ix": 3}, + "p": {"a": 0, "k": [6, 32], "ix": 4}, + "r": {"a": 0, "k": 0, "ix": 5}, + "or": {"a": 0, "k": 6.599, "ix": 7}, + "os": {"a": 0, "k": 0, "ix": 9}, + "ix": 1, + "nm": "Polystar Path 1", + "mn": "ADBE Vector Shape - Star", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [0.167325377464, 0.716982424259, 1, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-7.382, -25.677], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Polystar 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 9.599609375, + "op": 48, + "st": 9.599609375, + "bm": 0 + }, + { + "ddd": 0, + "ind": 35, + "ty": 4, + "nm": "Shape Layer 17", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 6.4, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 10.4, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 28, + "s": [100] + }, + {"t": 40.7998046875, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 0, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 0.659}, + "o": {"x": 0.167, "y": 0.153}, + "t": 6.4, + "s": [275.449, 259.557, 0], + "to": [0.546, 0.159, 0], + "ti": [-2.494, -0.483, 0] + }, + { + "i": {"x": 0.833, "y": 0.773}, + "o": {"x": 0.167, "y": 0.104}, + "t": 7.2, + "s": [278.724, 260.512, 0], + "to": [2.494, 0.483, 0], + "ti": [-5.49, -0.572, 0] + }, + { + "i": {"x": 0.833, "y": 0.827}, + "o": {"x": 0.167, "y": 0.13}, + "t": 8, + "s": [290.414, 262.453, 0], + "to": [5.49, 0.572, 0], + "ti": [-7.452, 0.063, 0] + }, + { + "i": {"x": 0.833, "y": 0.846}, + "o": {"x": 0.167, "y": 0.157}, + "t": 8.8, + "s": [311.663, 263.943, 0], + "to": [7.452, -0.063, 0], + "ti": [-7.172, 1.285, 0] + }, + { + "i": {"x": 0.833, "y": 0.86}, + "o": {"x": 0.167, "y": 0.164}, + "t": 9.6, + "s": [335.126, 262.075, 0], + "to": [7.172, -1.285, 0], + "ti": [-5.684, 2.429, 0] + }, + { + "i": {"x": 0.833, "y": 0.888}, + "o": {"x": 0.167, "y": 0.134}, + "t": 10.4, + "s": [354.697, 256.231, 0], + "to": [5.684, -2.429, 0], + "ti": [-4.084, 3.144, 0] + }, + { + "i": {"x": 0.833, "y": 0.924}, + "o": {"x": 0.167, "y": 0.09}, + "t": 11.2, + "s": [369.23, 247.5, 0], + "to": [4.084, -3.144, 0], + "ti": [-2.734, 3.404, 0] + }, + { + "i": {"x": 0.833, "y": 0.956}, + "o": {"x": 0.167, "y": 0.051}, + "t": 12, + "s": [379.199, 237.368, 0], + "to": [2.734, -3.404, 0], + "ti": [-1.736, 3.345, 0] + }, + { + "i": {"x": 0.833, "y": 0.978}, + "o": {"x": 0.167, "y": 0.025}, + "t": 12.8, + "s": [385.634, 227.077, 0], + "to": [1.736, -3.345, 0], + "ti": [-1.056, 3.132, 0] + }, + { + "i": {"x": 0.833, "y": 0.99}, + "o": {"x": 0.167, "y": 0.011}, + "t": 13.6, + "s": [389.616, 217.298, 0], + "to": [1.056, -3.132, 0], + "ti": [-0.604, 2.868, 0] + }, + { + "i": {"x": 0.833, "y": 0.996}, + "o": {"x": 0.167, "y": 0.004}, + "t": 14.4, + "s": [391.967, 208.287, 0], + "to": [0.604, -2.868, 0], + "ti": [-0.305, 2.608, 0] + }, + { + "i": {"x": 0.833, "y": 0.999}, + "o": {"x": 0.167, "y": 0.001}, + "t": 15.2, + "s": [393.24, 200.09, 0], + "to": [0.305, -2.608, 0], + "ti": [-0.105, 2.371, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16, + "s": [393.797, 192.641, 0], + "to": [0.105, -2.371, 0], + "ti": [0.031, 2.158, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16.8, + "s": [393.871, 185.865, 0], + "to": [-0.031, -2.158, 0], + "ti": [0.123, 1.968, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 17.6, + "s": [393.614, 179.691, 0], + "to": [-0.123, -1.968, 0], + "ti": [0.186, 1.797, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [393.131, 174.057, 0], + "to": [-0.186, -1.797, 0], + "ti": [0.228, 1.644, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [392.497, 168.908, 0], + "to": [-0.228, -1.644, 0], + "ti": [0.251, 1.504, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20, + "s": [391.765, 164.196, 0], + "to": [-0.251, -1.504, 0], + "ti": [0.261, 1.377, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [390.988, 159.882, 0], + "to": [-0.261, -1.377, 0], + "ti": [0.262, 1.261, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 21.6, + "s": [390.199, 155.932, 0], + "to": [-0.262, -1.261, 0], + "ti": [0.256, 1.155, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 22.4, + "s": [389.418, 152.313, 0], + "to": [-0.256, -1.155, 0], + "ti": [0.246, 1.057, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 23.2, + "s": [388.662, 149, 0], + "to": [-0.246, -1.057, 0], + "ti": [0.233, 0.967, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24, + "s": [387.941, 145.969, 0], + "to": [-0.233, -0.967, 0], + "ti": [0.217, 0.882, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24.8, + "s": [387.264, 143.201, 0], + "to": [-0.217, -0.882, 0], + "ti": [0.199, 0.803, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 25.6, + "s": [386.64, 140.677, 0], + "to": [-0.199, -0.803, 0], + "ti": [0.18, 0.729, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26.4, + "s": [386.071, 138.382, 0], + "to": [-0.18, -0.729, 0], + "ti": [0.159, 0.659, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 27.2, + "s": [385.563, 136.303, 0], + "to": [-0.159, -0.659, 0], + "ti": [0.138, 0.594, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28, + "s": [385.116, 134.426, 0], + "to": [-0.138, -0.594, 0], + "ti": [0.117, 0.531, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28.8, + "s": [384.732, 132.741, 0], + "to": [-0.117, -0.531, 0], + "ti": [0.096, 0.473, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 29.6, + "s": [384.411, 131.237, 0], + "to": [-0.096, -0.473, 0], + "ti": [0.076, 0.417, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 30.4, + "s": [384.153, 129.905, 0], + "to": [-0.076, -0.417, 0], + "ti": [0.055, 0.364, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 31.2, + "s": [383.957, 128.736, 0], + "to": [-0.055, -0.364, 0], + "ti": [0.036, 0.314, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32, + "s": [383.821, 127.721, 0], + "to": [-0.036, -0.314, 0], + "ti": [0.017, 0.266, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [383.742, 126.852, 0], + "to": [-0.017, -0.266, 0], + "ti": [0, 0.222, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [383.718, 126.122, 0], + "to": [0, -0.222, 0], + "ti": [-0.017, 0.179, 0] + }, + { + "i": {"x": 0.833, "y": 0.996}, + "o": {"x": 0.167, "y": 0.004}, + "t": 34.4, + "s": [383.745, 125.523, 0], + "to": [0.017, -0.179, 0], + "ti": [-0.032, 0.139, 0] + }, + { + "i": {"x": 0.833, "y": 0.986}, + "o": {"x": 0.167, "y": 0.018}, + "t": 35.2, + "s": [383.819, 125.048, 0], + "to": [0.032, -0.139, 0], + "ti": [-0.046, 0.101, 0] + }, + { + "i": {"x": 0.833, "y": 0.958}, + "o": {"x": 0.167, "y": 0.054}, + "t": 36, + "s": [383.937, 124.69, 0], + "to": [0.046, -0.101, 0], + "ti": [-0.058, 0.066, 0] + }, + { + "i": {"x": 0.833, "y": 0.9}, + "o": {"x": 0.167, "y": 0.115}, + "t": 36.8, + "s": [384.093, 124.442, 0], + "to": [0.058, -0.066, 0], + "ti": [-0.068, 0.032, 0] + }, + { + "i": {"x": 0.833, "y": 0.843}, + "o": {"x": 0.167, "y": 0.163}, + "t": 37.6, + "s": [384.283, 124.297, 0], + "to": [0.068, -0.032, 0], + "ti": [-0.074, 0.009, 0] + }, + { + "i": {"x": 0.833, "y": 0.838}, + "o": {"x": 0.167, "y": 0.166}, + "t": 38.4, + "s": [384.5, 124.247, 0], + "to": [0.074, -0.009, 0], + "ti": [-0.073, 0.002, 0] + }, + { + "i": {"x": 0.833, "y": 0.84}, + "o": {"x": 0.167, "y": 0.172}, + "t": 39.2, + "s": [384.725, 124.244, 0], + "to": [0.073, -0.002, 0], + "ti": [-0.068, 0.003, 0] + }, + { + "i": {"x": 0.833, "y": 0.843}, + "o": {"x": 0.167, "y": 0.173}, + "t": 40, + "s": [384.937, 124.237, 0], + "to": [0.068, -0.003, 0], + "ti": [-0.061, 0.006, 0] + }, + { + "i": {"x": 0.833, "y": 0.85}, + "o": {"x": 0.167, "y": 0.174}, + "t": 40.8, + "s": [385.131, 124.223, 0], + "to": [0.061, -0.006, 0], + "ti": [-0.052, 0.011, 0] + }, + { + "i": {"x": 0.833, "y": 0.86}, + "o": {"x": 0.167, "y": 0.168}, + "t": 41.6, + "s": [385.302, 124.198, 0], + "to": [0.052, -0.011, 0], + "ti": [-0.041, 0.017, 0] + }, + { + "i": {"x": 0.833, "y": 0.885}, + "o": {"x": 0.167, "y": 0.136}, + "t": 42.4, + "s": [385.442, 124.158, 0], + "to": [0.041, -0.017, 0], + "ti": [-0.028, 0.024, 0] + }, + { + "i": {"x": 0.833, "y": 0.936}, + "o": {"x": 0.167, "y": 0.071}, + "t": 43.2, + "s": [385.546, 124.097, 0], + "to": [0.028, -0.024, 0], + "ti": [-0.026, 0.021, 0] + }, + { + "i": {"x": 0.833, "y": 0.853}, + "o": {"x": 0.167, "y": 0.137}, + "t": 44, + "s": [385.612, 124.016, 0], + "to": [0.026, -0.021, 0], + "ti": [-0.034, 0.006, 0] + }, + { + "i": {"x": 0.833, "y": 0.817}, + "o": {"x": 0.167, "y": 0.151}, + "t": 44.8, + "s": [385.701, 123.974, 0], + "to": [0.034, -0.006, 0], + "ti": [-0.043, -0.01, 0] + }, + { + "i": {"x": 0.833, "y": 0.842}, + "o": {"x": 0.167, "y": 0.129}, + "t": 45.6, + "s": [385.818, 123.981, 0], + "to": [0.043, 0.01, 0], + "ti": [-0.048, -0.025, 0] + }, + { + "i": {"x": 0.833, "y": 0.881}, + "o": {"x": 0.167, "y": 0.109}, + "t": 46.4, + "s": [385.957, 124.035, 0], + "to": [0.048, 0.025, 0], + "ti": [-0.025, -0.016, 0] + }, + {"t": 47.2001953125, "s": [386.107, 124.13, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.944, 0.679, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 6.4, + "s": [49.219, 103.811, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.111, 0.916, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.166, 0.113, 0]}, + "t": 7.2, + "s": [96.918, 92.8, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.903, 29.634, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.048, 19.512, 0]}, + "t": 8, + "s": [80.991, 61.448, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.606, 1.004, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.607, 0.083, 0]}, + "t": 8.8, + "s": [118.185, 61.313, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.989, 0.964, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.073, 0.004, 0]}, + "t": 9.6, + "s": [124.101, 107.653, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.917, 0.896, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.013, -0.062, 0]}, + "t": 10.4, + "s": [75.181, 59.182, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-66.474, 0.968, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-62.902, 0.413, 0]}, + "t": 11.2, + "s": [117.68, 86.992, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.946, 0.5, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.083, -0.053, 0]}, + "t": 12, + "s": [117.624, 94.022, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.649, 0.962, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.154, 0.1, 0]}, + "t": 12.8, + "s": [72.153, 89.729, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.994, 0.616, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.109, -0.07, 0]}, + "t": 13.6, + "s": [88.106, 68.252, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.926, 0.942, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.006, 0.106, 0]}, + "t": 14.4, + "s": [139.441, 79.894, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.246, 0.999, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.681, -0.189, 0]}, + "t": 15.2, + "s": [91.59, 121.922, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.031, 1.095, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.062, -0.001, 0]}, + "t": 16, + "s": [96.806, 109.051, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.909, 0.978, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.023, 0.044, 0]}, + "t": 16.8, + "s": [76.174, 121.699, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.266, 0.951, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.036, -0.029, 0]}, + "t": 17.6, + "s": [104.516, 94.655, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.009, 0.92, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.078, -0.118, 0]}, + "t": 18.4, + "s": [106.997, 114.689, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.918, 7.261, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.008, -1.803, 0]}, + "t": 19.2, + "s": [66.837, 106.412, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-2.407, 1.035, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-4.986, 0.082, 0]}, + "t": 20, + "s": [111.464, 106.778, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.975, 1.046, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.085, 0.025, 0]}, + "t": 20.8, + "s": [110.731, 78.932, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.884, 0.945, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.036, 0.03, 0]}, + "t": 21.6, + "s": [81.464, 118.575, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.215, 0.686, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.293, -0.158, 0]}, + "t": 22.4, + "s": [101.82, 56.948, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.963, 0.967, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.06, 0.113, 0]}, + "t": 23.2, + "s": [109.895, 78.255, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.916, 0.979, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.066, -0.056, 0]}, + "t": 24, + "s": [80.942, 137.249, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-6.825, 1.076, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [12.813, -0.028, 0]}, + "t": 24.8, + "s": [97.117, 101.933, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.453, 0.923, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.084, 0.04, 0]}, + "t": 25.6, + "s": [97.223, 128.384, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.989, 0.619, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.07, -0.935, 0]}, + "t": 26.4, + "s": [107.061, 77.679, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.947, 0.924, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.013, 0.107, 0]}, + "t": 27.2, + "s": [43.764, 81.828, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.92, -1.176, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.143, -0.844, 0]}, + "t": 28, + "s": [98.569, 96.663, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.435, 0.919, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-2.309, 0.087, 0]}, + "t": 28.8, + "s": [78.363, 95.331, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.931, 2.863, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.079, -3.482, 0]}, + "t": 29.6, + "s": [79.067, 61.85, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.227, 0.912, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.407, 0.08, 0]}, + "t": 30.4, + "s": [66.248, 62.633, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.092, -2.125, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.093, 1.726, 0]}, + "t": 31.2, + "s": [68.428, 44.364, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.901, 1.019, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.044, 0.086, 0]}, + "t": 32, + "s": [86.481, 43.437, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.779, 1.036, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.541, 0.015, 0]}, + "t": 32.8, + "s": [48.571, 9.591, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.776, 1.009, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.134, 0.025, 0]}, + "t": 33.6, + "s": [41.665, 51.149, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.092, 0.916, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.133, 0.008, 0]}, + "t": 34.4, + "s": [30.243, -8.194, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.935, 9.655, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.044, 20.427, 0]}, + "t": 35.2, + "s": [10.976, 57.43, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.606, 0.758, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.287, 0.083, 0]}, + "t": 36, + "s": [51.537, 57.699, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.918, 0.988, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.106, 0.127, 0]}, + "t": 36.8, + "s": [42.412, 29.51, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-8.505, 0.903, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-5.258, -0.014, 0]}, + "t": 37.6, + "s": [8.401, -24.232, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.961, 0.669, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.084, 0.582, 0]}, + "t": 38.4, + "s": [8.932, 21.756, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.956, 0.913, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.072, 0.111, 0]}, + "t": 39.2, + "s": [68.92, 29.447, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.049, 0.445, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.094, 1.927, 0]}, + "t": 40, + "s": [36.715, 52.274, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.899, 1.631, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.031, 0.098, 0]}, + "t": 40.8, + "s": [51.861, 53.306, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.136, 0.908, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.481, 0.074, 0]}, + "t": 41.6, + "s": [27.738, 59.151, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.062, 0.322, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.052, 0.928, 0]}, + "t": 42.4, + "s": [22.685, 9.056, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.882, 0.979, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.035, 0.095, 0]}, + "t": 43.2, + "s": [35.966, 4.115, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.028, 0.812, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.285, -0.029, 0]}, + "t": 44, + "s": [12.831, -31.117, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.846, 0.873, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.021, 0.15, 0]}, + "t": 44.8, + "s": [3.287, -4.957, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.815, 0.964, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.182, 0.241, 0]}, + "t": 45.6, + "s": [16.066, 27.774, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.152, -0.063, 0]}, + "t": 46.4, + "s": [26.832, 45.045, 100] + }, + {"t": 47.2001953125, "s": [39.927, 35.232, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ty": "sr", + "sy": 2, + "d": 1, + "pt": {"a": 0, "k": 3, "ix": 3}, + "p": {"a": 0, "k": [6, 32], "ix": 4}, + "r": {"a": 0, "k": 0, "ix": 5}, + "or": {"a": 0, "k": 6.599, "ix": 7}, + "os": {"a": 0, "k": 0, "ix": 9}, + "ix": 1, + "nm": "Polystar Path 1", + "mn": "ADBE Vector Shape - Star", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [0.167325377464, 0.716982424259, 1, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-7.382, -25.677], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Polystar 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 6.400390625, + "op": 48, + "st": 6.400390625, + "bm": 0 + }, + { + "ddd": 0, + "ind": 36, + "ty": 4, + "nm": "Shape Layer 16", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 7.2, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 11.2, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 28.8, + "s": [100] + }, + {"t": 41.599609375, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 0, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 7.2, + "s": [275.519, 261.1, 0], + "to": [-0.307, -0.313, 0], + "ti": [1.698, 1.185, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8, + "s": [273.678, 259.22, 0], + "to": [-1.698, -1.185, 0], + "ti": [1.745, -2.083, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [265.331, 253.99, 0], + "to": [-1.745, 2.083, 0], + "ti": [-0.013, -6.364, 0] + }, + { + "i": {"x": 0.833, "y": 0.998}, + "o": {"x": 0.167, "y": 0.002}, + "t": 9.6, + "s": [263.209, 271.718, 0], + "to": [0.013, 6.364, 0], + "ti": [-0.69, -6.377, 0] + }, + { + "i": {"x": 0.833, "y": 0.998}, + "o": {"x": 0.167, "y": 0.002}, + "t": 10.4, + "s": [265.411, 292.176, 0], + "to": [0.69, 6.377, 0], + "ti": [-0.533, -5.437, 0] + }, + { + "i": {"x": 0.833, "y": 0.999}, + "o": {"x": 0.167, "y": 0.001}, + "t": 11.2, + "s": [267.35, 309.98, 0], + "to": [0.533, 5.437, 0], + "ti": [-0.321, -4.543, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0.001}, + "t": 12, + "s": [268.609, 324.8, 0], + "to": [0.321, 4.543, 0], + "ti": [-0.144, -3.839, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12.8, + "s": [269.275, 337.239, 0], + "to": [0.144, 3.839, 0], + "ti": [-0.006, -3.291, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 13.6, + "s": [269.475, 347.837, 0], + "to": [0.006, 3.291, 0], + "ti": [0.101, -2.855, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 14.4, + "s": [269.314, 356.986, 0], + "to": [-0.101, 2.855, 0], + "ti": [0.186, -2.499, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 15.2, + "s": [268.867, 364.967, 0], + "to": [-0.186, 2.499, 0], + "ti": [0.253, -2.201, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16, + "s": [268.196, 371.978, 0], + "to": [-0.253, 2.201, 0], + "ti": [0.306, -1.947, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16.8, + "s": [267.347, 378.17, 0], + "to": [-0.306, 1.947, 0], + "ti": [0.347, -1.728, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 17.6, + "s": [266.36, 383.661, 0], + "to": [-0.347, 1.728, 0], + "ti": [0.377, -1.535, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [265.266, 388.537, 0], + "to": [-0.377, 1.535, 0], + "ti": [0.399, -1.366, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [264.095, 392.873, 0], + "to": [-0.399, 1.366, 0], + "ti": [0.413, -1.215, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20, + "s": [262.872, 396.731, 0], + "to": [-0.413, 1.215, 0], + "ti": [0.42, -1.082, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [261.617, 400.166, 0], + "to": [-0.42, 1.082, 0], + "ti": [0.421, -0.962, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 21.6, + "s": [260.351, 403.22, 0], + "to": [-0.421, 0.962, 0], + "ti": [0.416, -0.854, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 22.4, + "s": [259.092, 405.935, 0], + "to": [-0.416, 0.854, 0], + "ti": [0.407, -0.759, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 23.2, + "s": [257.854, 408.347, 0], + "to": [-0.407, 0.759, 0], + "ti": [0.395, -0.675, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24, + "s": [256.649, 410.491, 0], + "to": [-0.395, 0.675, 0], + "ti": [0.379, -0.6, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24.8, + "s": [255.487, 412.396, 0], + "to": [-0.379, 0.6, 0], + "ti": [0.361, -0.535, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 25.6, + "s": [254.375, 414.092, 0], + "to": [-0.361, 0.535, 0], + "ti": [0.343, -0.477, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26.4, + "s": [253.318, 415.604, 0], + "to": [-0.343, 0.477, 0], + "ti": [0.323, -0.427, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 27.2, + "s": [252.319, 416.955, 0], + "to": [-0.323, 0.427, 0], + "ti": [0.304, -0.384, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28, + "s": [251.378, 418.167, 0], + "to": [-0.304, 0.384, 0], + "ti": [0.285, -0.347, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28.8, + "s": [250.495, 419.259, 0], + "to": [-0.285, 0.347, 0], + "ti": [0.268, -0.316, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 29.6, + "s": [249.666, 420.25, 0], + "to": [-0.268, 0.316, 0], + "ti": [0.252, -0.289, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 30.4, + "s": [248.887, 421.154, 0], + "to": [-0.252, 0.289, 0], + "ti": [0.235, -0.266, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 31.2, + "s": [248.153, 421.986, 0], + "to": [-0.235, 0.266, 0], + "ti": [0.208, -0.241, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32, + "s": [247.479, 422.749, 0], + "to": [-0.208, 0.241, 0], + "ti": [0.175, -0.214, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [246.907, 423.43, 0], + "to": [-0.175, 0.214, 0], + "ti": [0.145, -0.189, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [246.43, 424.033, 0], + "to": [-0.145, 0.189, 0], + "ti": [0.118, -0.164, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [246.038, 424.562, 0], + "to": [-0.118, 0.164, 0], + "ti": [0.094, -0.141, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 35.2, + "s": [245.721, 425.02, 0], + "to": [-0.094, 0.141, 0], + "ti": [0.073, -0.118, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36, + "s": [245.472, 425.408, 0], + "to": [-0.073, 0.118, 0], + "ti": [0.055, -0.096, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36.8, + "s": [245.282, 425.73, 0], + "to": [-0.055, 0.096, 0], + "ti": [0.039, -0.074, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 37.6, + "s": [245.143, 425.985, 0], + "to": [-0.039, 0.074, 0], + "ti": [0.025, -0.053, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 38.4, + "s": [245.048, 426.176, 0], + "to": [-0.025, 0.053, 0], + "ti": [0.019, -0.036, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 39.2, + "s": [244.991, 426.303, 0], + "to": [-0.019, 0.036, 0], + "ti": [0.026, -0.027, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40, + "s": [244.933, 426.392, 0], + "to": [-0.026, 0.027, 0], + "ti": [0.039, -0.021, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40.8, + "s": [244.836, 426.464, 0], + "to": [-0.039, 0.021, 0], + "ti": [0.052, -0.016, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 41.6, + "s": [244.701, 426.519, 0], + "to": [-0.052, 0.016, 0], + "ti": [0.065, -0.01, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 42.4, + "s": [244.525, 426.558, 0], + "to": [-0.065, 0.01, 0], + "ti": [0.079, -0.004, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 43.2, + "s": [244.308, 426.579, 0], + "to": [-0.079, 0.004, 0], + "ti": [0.092, 0.002, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44, + "s": [244.051, 426.582, 0], + "to": [-0.092, -0.002, 0], + "ti": [0.105, 0.007, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44.8, + "s": [243.755, 426.569, 0], + "to": [-0.105, -0.007, 0], + "ti": [0.117, 0.012, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 45.6, + "s": [243.422, 426.54, 0], + "to": [-0.117, -0.012, 0], + "ti": [0.128, 0.017, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 46.4, + "s": [243.055, 426.497, 0], + "to": [-0.128, -0.017, 0], + "ti": [0.066, 0.01, 0] + }, + {"t": 47.2001953125, "s": [242.656, 426.439, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.563, 1.02, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 7.2, + "s": [92.322, 93.922, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.109, 0.948, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.103, 0.016, 0]}, + "t": 8, + "s": [95.253, 42.092, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.054, 0.89, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.047, -0.14, 0]}, + "t": 8.8, + "s": [107.675, 106.42, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.929, 0.725, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.033, 0.342, 0]}, + "t": 9.6, + "s": [79.026, 82.445, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.393, 1.033, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.475, 0.12, 0]}, + "t": 10.4, + "s": [126.398, 74.729, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.968, 0.877, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.097, 0.024, 0]}, + "t": 11.2, + "s": [119.33, 57.001, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.834, 1.214, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.053, 0.26, 0]}, + "t": 12, + "s": [74.88, 81.854, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.042, 0.975, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.06, 0]}, + "t": 12.8, + "s": [102.06, 93.554, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.894, 0.977, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.028, -0.035, 0]}, + "t": 13.6, + "s": [129.135, 51.875, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.863, 1.026, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.389, -0.032, 0]}, + "t": 14.4, + "s": [88.364, 81.23, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.102, 0.969, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.212, 0.02, 0]}, + "t": 15.2, + "s": [77.256, 59.947, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.698, 1.03, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.046, -0.051, 0]}, + "t": 16, + "s": [70.037, 87.966, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.995, 1.049, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.115, 0.022, 0]}, + "t": 16.8, + "s": [86.104, 70.53, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.904, 1.07, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.006, 0.031, 0]}, + "t": 17.6, + "s": [128.201, 94.177, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.376, 0.967, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.627, 0.038, 0]}, + "t": 18.4, + "s": [88.836, 56.66, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.999, 0.977, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.068, -0.054, 0]}, + "t": 19.2, + "s": [82.802, 125.882, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.976, 1.097, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.002, -0.031, 0]}, + "t": 20, + "s": [116.041, 83.757, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.9, 0.955, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.033, 0.045, 0]}, + "t": 20.8, + "s": [83.397, 114.487, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.069, 0.9, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.508, -0.099, 0]}, + "t": 21.6, + "s": [106.769, 47.904, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.758, 0.953, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.038, 0.497, 0]}, + "t": 22.4, + "s": [111.355, 78.308, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.163, 1.569, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.127, -0.106, 0]}, + "t": 23.2, + "s": [102.953, 84.434, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.9, 0.913, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.055, 0.073, 0]}, + "t": 24, + "s": [86.963, 81.742, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.429, 1.529, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.493, 1.851, 0]}, + "t": 24.8, + "s": [134.26, 102.822, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.944, 1.156, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.07, 0.072, 0]}, + "t": 25.6, + "s": [143.885, 103.815, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.922, 1.116, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.171, 0.054, 0]}, + "t": 26.4, + "s": [84.672, 96.517, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.547, 0.897, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.171, 0.048, 0]}, + "t": 27.2, + "s": [104.079, 117.449, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.772, 0.913, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.088, 0.439, 0]}, + "t": 28, + "s": [102.79, 67.476, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.975, 1.47, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.131, 2.037, 0]}, + "t": 28.8, + "s": [80.144, 55.767, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.822, 1.082, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.036, 0.071, 0]}, + "t": 29.6, + "s": [40.802, 55.268, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.966, 0.556, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.157, 0.041, 0]}, + "t": 30.4, + "s": [68.335, 58.584, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.795, 1.044, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.058, 0.103, 0]}, + "t": 31.2, + "s": [99.544, 51.985, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.792, 1.038, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.141, 0.029, 0]}, + "t": 32, + "s": [81.176, 23.398, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.896, 0.994, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.139, 0.026, 0]}, + "t": 32.8, + "s": [54.468, 66.977, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.334, 0.99, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.427, -0.006, 0]}, + "t": 33.6, + "s": [14.561, 3.526, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.853, 0.974, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.067, -0.011, 0]}, + "t": 34.4, + "s": [4.89, 62.465, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.066, 1.037, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.192, -0.037, 0]}, + "t": 35.2, + "s": [53.289, 10.271, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.882, 0.941, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.037, 0.026, 0]}, + "t": 36, + "s": [90.493, 46.486, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.078, 0.738, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.284, -0.203, 0]}, + "t": 36.8, + "s": [23.844, -5.784, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.862, 0.898, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.04, 0.122, 0]}, + "t": 37.6, + "s": [-3.767, 9.434, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.96, 1.136, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.211, 0.454, 0]}, + "t": 38.4, + "s": [49.843, 42.088, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.76, 0.903, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.077, 0.052, 0]}, + "t": 39.2, + "s": [84.879, 49.437, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.867, 0.214, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.128, 0.58, 0]}, + "t": 40, + "s": [66.624, 30.104, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.951, 0.972, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.222, 0.093, 0]}, + "t": 40.8, + "s": [32.305, 26.858, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.916, 1.208, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.117, -0.043, 0]}, + "t": 41.6, + "s": [11.683, -0.538, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.198, 0.965, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [10.385, 0.06, 0]}, + "t": 42.4, + "s": [20.245, 17.535, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.475, 0.823, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.078, -0.06, 0]}, + "t": 43.2, + "s": [20.314, -45.662, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.442, 0.954, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.099, 0.157, 0]}, + "t": 44, + "s": [19.25, -8.935, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.962, 1.012, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.07, -0.101, 0]}, + "t": 44.8, + "s": [13.603, 32.461, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.007, 0.766, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.071, 0.01, 0]}, + "t": 45.6, + "s": [49.18, 13.788, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.006, 0.129, 0]}, + "t": 46.4, + "s": [29.913, 35.117, 100] + }, + {"t": 47.2001953125, "s": [50.756, 73.724, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ty": "sr", + "sy": 2, + "d": 1, + "pt": {"a": 0, "k": 3, "ix": 3}, + "p": {"a": 0, "k": [6, 32], "ix": 4}, + "r": {"a": 0, "k": 0, "ix": 5}, + "or": {"a": 0, "k": 6.599, "ix": 7}, + "os": {"a": 0, "k": 0, "ix": 9}, + "ix": 1, + "nm": "Polystar Path 1", + "mn": "ADBE Vector Shape - Star", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [0.167325377464, 0.716982424259, 1, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-7.382, -25.677], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Polystar 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 7.2001953125, + "op": 48, + "st": 7.2001953125, + "bm": 0 + }, + { + "ddd": 0, + "ind": 37, + "ty": 4, + "nm": "Shape Layer 15", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 4.8, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 8.8, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 26.4, + "s": [100] + }, + {"t": 39.2001953125, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 0, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 4.8, + "s": [275.485, 257.563, 0], + "to": [-0.11, -0.249, 0], + "ti": [0.689, 1.001, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 5.6, + "s": [274.824, 256.066, 0], + "to": [-0.689, -1.001, 0], + "ti": [1.729, 2.01, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 6.4, + "s": [271.354, 251.559, 0], + "to": [-1.729, -2.01, 0], + "ti": [2.505, 2.573, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 7.2, + "s": [264.452, 244.008, 0], + "to": [-2.505, -2.573, 0], + "ti": [2.58, 2.412, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8, + "s": [256.321, 236.124, 0], + "to": [-2.58, -2.412, 0], + "ti": [2.262, 1.991, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [248.97, 229.538, 0], + "to": [-2.262, -1.991, 0], + "ti": [1.91, 1.643, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [242.747, 224.176, 0], + "to": [-1.91, -1.643, 0], + "ti": [1.608, 1.404, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 10.4, + "s": [237.508, 219.678, 0], + "to": [-1.608, -1.404, 0], + "ti": [1.343, 1.257, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 11.2, + "s": [233.099, 215.75, 0], + "to": [-1.343, -1.257, 0], + "ti": [1.062, 1.209, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12, + "s": [229.447, 212.138, 0], + "to": [-1.062, -1.209, 0], + "ti": [0.452, 1.267, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12.8, + "s": [226.724, 208.498, 0], + "to": [-0.452, -1.267, 0], + "ti": [-0.52, 1.026, 0] + }, + { + "i": {"x": 0.833, "y": 0.898}, + "o": {"x": 0.167, "y": 0.111}, + "t": 13.6, + "s": [226.732, 204.537, 0], + "to": [0.52, -1.026, 0], + "ti": [-1.055, 0.562, 0] + }, + { + "i": {"x": 0.833, "y": 0.861}, + "o": {"x": 0.167, "y": 0.156}, + "t": 14.4, + "s": [229.844, 202.343, 0], + "to": [1.055, -0.562, 0], + "ti": [-1.033, 0.324, 0] + }, + { + "i": {"x": 0.833, "y": 0.852}, + "o": {"x": 0.167, "y": 0.165}, + "t": 15.2, + "s": [233.062, 201.165, 0], + "to": [1.033, -0.324, 0], + "ti": [-0.951, 0.215, 0] + }, + { + "i": {"x": 0.833, "y": 0.847}, + "o": {"x": 0.167, "y": 0.17}, + "t": 16, + "s": [236.043, 200.396, 0], + "to": [0.951, -0.215, 0], + "ti": [-0.867, 0.144, 0] + }, + { + "i": {"x": 0.833, "y": 0.844}, + "o": {"x": 0.167, "y": 0.172}, + "t": 16.8, + "s": [238.767, 199.873, 0], + "to": [0.867, -0.144, 0], + "ti": [-0.789, 0.088, 0] + }, + { + "i": {"x": 0.833, "y": 0.842}, + "o": {"x": 0.167, "y": 0.175}, + "t": 17.6, + "s": [241.247, 199.533, 0], + "to": [0.789, -0.088, 0], + "ti": [-0.717, 0.039, 0] + }, + { + "i": {"x": 0.833, "y": 0.84}, + "o": {"x": 0.167, "y": 0.175}, + "t": 18.4, + "s": [243.501, 199.346, 0], + "to": [0.717, -0.039, 0], + "ti": [-0.654, 0.005, 0] + }, + { + "i": {"x": 0.833, "y": 0.84}, + "o": {"x": 0.167, "y": 0.174}, + "t": 19.2, + "s": [245.548, 199.298, 0], + "to": [0.654, -0.005, 0], + "ti": [-0.601, -0.009, 0] + }, + { + "i": {"x": 0.833, "y": 0.84}, + "o": {"x": 0.167, "y": 0.174}, + "t": 20, + "s": [247.425, 199.317, 0], + "to": [0.601, 0.009, 0], + "ti": [-0.552, -0.013, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.174}, + "t": 20.8, + "s": [249.152, 199.353, 0], + "to": [0.552, 0.013, 0], + "ti": [-0.504, -0.015, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.175}, + "t": 21.6, + "s": [250.734, 199.397, 0], + "to": [0.504, 0.015, 0], + "ti": [-0.457, -0.014, 0] + }, + { + "i": {"x": 0.833, "y": 0.842}, + "o": {"x": 0.167, "y": 0.175}, + "t": 22.4, + "s": [252.175, 199.441, 0], + "to": [0.457, 0.014, 0], + "ti": [-0.412, -0.011, 0] + }, + { + "i": {"x": 0.833, "y": 0.843}, + "o": {"x": 0.167, "y": 0.176}, + "t": 23.2, + "s": [253.479, 199.479, 0], + "to": [0.412, 0.011, 0], + "ti": [-0.367, -0.007, 0] + }, + { + "i": {"x": 0.833, "y": 0.844}, + "o": {"x": 0.167, "y": 0.177}, + "t": 24, + "s": [254.647, 199.506, 0], + "to": [0.367, 0.007, 0], + "ti": [-0.324, -0.001, 0] + }, + { + "i": {"x": 0.833, "y": 0.845}, + "o": {"x": 0.167, "y": 0.179}, + "t": 24.8, + "s": [255.684, 199.519, 0], + "to": [0.324, 0.001, 0], + "ti": [-0.281, 0.005, 0] + }, + { + "i": {"x": 0.833, "y": 0.847}, + "o": {"x": 0.167, "y": 0.18}, + "t": 25.6, + "s": [256.59, 199.514, 0], + "to": [0.281, -0.005, 0], + "ti": [-0.238, 0.012, 0] + }, + { + "i": {"x": 0.833, "y": 0.849}, + "o": {"x": 0.167, "y": 0.182}, + "t": 26.4, + "s": [257.369, 199.488, 0], + "to": [0.238, -0.012, 0], + "ti": [-0.197, 0.019, 0] + }, + { + "i": {"x": 0.833, "y": 0.853}, + "o": {"x": 0.167, "y": 0.182}, + "t": 27.2, + "s": [258.021, 199.442, 0], + "to": [0.197, -0.019, 0], + "ti": [-0.156, 0.027, 0] + }, + { + "i": {"x": 0.833, "y": 0.862}, + "o": {"x": 0.167, "y": 0.179}, + "t": 28, + "s": [258.548, 199.373, 0], + "to": [0.156, -0.027, 0], + "ti": [-0.116, 0.034, 0] + }, + { + "i": {"x": 0.833, "y": 0.876}, + "o": {"x": 0.167, "y": 0.167}, + "t": 28.8, + "s": [258.956, 199.282, 0], + "to": [0.116, -0.034, 0], + "ti": [-0.078, 0.042, 0] + }, + { + "i": {"x": 0.833, "y": 0.907}, + "o": {"x": 0.167, "y": 0.125}, + "t": 29.6, + "s": [259.247, 199.167, 0], + "to": [0.078, -0.042, 0], + "ti": [-0.042, 0.049, 0] + }, + { + "i": {"x": 0.833, "y": 0.972}, + "o": {"x": 0.167, "y": 0.032}, + "t": 30.4, + "s": [259.427, 199.031, 0], + "to": [0.042, -0.049, 0], + "ti": [-0.007, 0.055, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 31.2, + "s": [259.498, 198.875, 0], + "to": [0.007, -0.055, 0], + "ti": [0.027, 0.061, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32, + "s": [259.466, 198.699, 0], + "to": [-0.027, -0.061, 0], + "ti": [0.059, 0.066, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [259.336, 198.506, 0], + "to": [-0.059, -0.066, 0], + "ti": [0.089, 0.071, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [259.112, 198.3, 0], + "to": [-0.089, -0.071, 0], + "ti": [0.117, 0.074, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [258.802, 198.083, 0], + "to": [-0.117, -0.074, 0], + "ti": [0.142, 0.075, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 35.2, + "s": [258.411, 197.859, 0], + "to": [-0.142, -0.075, 0], + "ti": [0.165, 0.075, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36, + "s": [257.947, 197.632, 0], + "to": [-0.165, -0.075, 0], + "ti": [0.182, 0.074, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36.8, + "s": [257.418, 197.407, 0], + "to": [-0.182, -0.074, 0], + "ti": [0.188, 0.072, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 37.6, + "s": [256.856, 197.186, 0], + "to": [-0.188, -0.072, 0], + "ti": [0.188, 0.068, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 38.4, + "s": [256.29, 196.974, 0], + "to": [-0.188, -0.068, 0], + "ti": [0.184, 0.062, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 39.2, + "s": [255.73, 196.777, 0], + "to": [-0.184, -0.062, 0], + "ti": [0.178, 0.054, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40, + "s": [255.185, 196.601, 0], + "to": [-0.178, -0.054, 0], + "ti": [0.168, 0.043, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40.8, + "s": [254.664, 196.453, 0], + "to": [-0.168, -0.043, 0], + "ti": [0.154, 0.03, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 41.6, + "s": [254.178, 196.341, 0], + "to": [-0.154, -0.03, 0], + "ti": [0.136, 0.014, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 42.4, + "s": [253.74, 196.272, 0], + "to": [-0.136, -0.014, 0], + "ti": [0.114, -0.009, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 43.2, + "s": [253.361, 196.256, 0], + "to": [-0.114, 0.009, 0], + "ti": [0.088, -0.039, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44, + "s": [253.059, 196.325, 0], + "to": [-0.088, 0.039, 0], + "ti": [0.062, -0.069, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44.8, + "s": [252.835, 196.49, 0], + "to": [-0.062, 0.069, 0], + "ti": [0.038, -0.096, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 45.6, + "s": [252.687, 196.74, 0], + "to": [-0.038, 0.096, 0], + "ti": [0.015, -0.119, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 46.4, + "s": [252.609, 197.066, 0], + "to": [-0.015, 0.119, 0], + "ti": [0.002, -0.065, 0] + }, + {"t": 47.2001953125, "s": [252.597, 197.456, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.755, 1.005, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 4.8, + "s": [82.502, 83.365, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.13, 0.857, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.126, 0.005, 0]}, + "t": 5.6, + "s": [92.567, 121.915, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.954, 1.043, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.051, 0.199, 0]}, + "t": 6.4, + "s": [112.053, 80.824, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.879, 0.874, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.103, 0.029, 0]}, + "t": 7.2, + "s": [62.128, 51.3, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.612, 1.126, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.269, 0.247, 0]}, + "t": 8, + "s": [84.48, 96.186, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.946, 0.869, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.106, 0.05, 0]}, + "t": 8.8, + "s": [94.531, 118.987, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.7, 1.007, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.155, 0.229, 0]}, + "t": 9.6, + "s": [131.266, 61.724, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.907, 0.775, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.115, 0.006, 0]}, + "t": 10.4, + "s": [118.417, 29.003, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.355, 0.999, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.826, 0.132, 0]}, + "t": 11.2, + "s": [85.075, 64.302, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.982, 0.898, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.067, -0.001, 0]}, + "t": 12, + "s": [81.335, 124.25, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.912, 0.874, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.023, 0.465, 0]}, + "t": 12.8, + "s": [101.012, 65.094, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-1.678, 1.303, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.724, 0.245, 0]}, + "t": 13.6, + "s": [85.57, 52.183, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.895, 0.888, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.086, 0.065, 0]}, + "t": 14.4, + "s": [84.785, 45.511, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.611, 0.792, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.406, 0.329, 0]}, + "t": 15.2, + "s": [60.369, 76.428, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.931, 1.274, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.073, 0.139, 0]}, + "t": 16, + "s": [54.064, 86.903, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.849, 0.976, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.399, 0.064, 0]}, + "t": 16.8, + "s": [106.629, 102.562, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.815, 0.921, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.186, -0.033, 0]}, + "t": 17.6, + "s": [97.556, 35.47, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.903, 2.194, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.152, -1.466, 0]}, + "t": 18.4, + "s": [90.213, 83.359, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [3.318, 1.048, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.578, 0.078, 0]}, + "t": 19.2, + "s": [81.292, 80.783, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.951, 0.967, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.08, 0.031, 0]}, + "t": 20, + "s": [79.79, 120.257, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.962, 0.971, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.122, -0.054, 0]}, + "t": 20.8, + "s": [123.086, 57.838, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.232, 0.873, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.07, -0.045, 0]}, + "t": 21.6, + "s": [105.488, 95.827, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.055, 0.885, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.061, 0.244, 0]}, + "t": 22.4, + "s": [115.025, 71.124, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.912, 1.655, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.033, 0.303, 0]}, + "t": 23.2, + "s": [78.946, 58.294, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.622, 0.901, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.606, 0.074, 0]}, + "t": 24, + "s": [138.694, 53.428, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.84, 0.751, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.073, 0.515, 0]}, + "t": 24.8, + "s": [141.965, 96.547, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.001, 1.291, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.174, 0.125, 0]}, + "t": 25.6, + "s": [114.285, 104.867, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.034, 0.926, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.001, 0.065, 0]}, + "t": 26.4, + "s": [88.923, 121.377, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.803, 1.172, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.024, -0.633, 0]}, + "t": 27.2, + "s": [114.574, 47.291, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.958, 0.952, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.145, 0.056, 0]}, + "t": 28, + "s": [78.466, 55.906, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.8, 1.065, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.086, -0.111, 0]}, + "t": 28.8, + "s": [29.34, 29.523, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.943, 0.987, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.143, 0.036, 0]}, + "t": 29.6, + "s": [53.468, 40.837, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.752, 0.669, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.176, -0.016, 0]}, + "t": 30.4, + "s": [87.347, 20.728, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.766, 1.02, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.126, 0.111, 0]}, + "t": 31.2, + "s": [76.456, 37.629, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.931, 0.959, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.129, 0.016, 0]}, + "t": 32, + "s": [54.995, 87.783, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.044, 1.088, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.403, -0.082, 0]}, + "t": 32.8, + "s": [16.235, 25.439, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.502, 0.976, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.029, 0.043, 0]}, + "t": 33.6, + "s": [22.876, 56.837, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.932, 0.922, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.071, -0.033, 0]}, + "t": 34.4, + "s": [12.722, -7.888, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.475, 0.348, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.373, -1.253, 0]}, + "t": 35.2, + "s": [84.051, 38.375, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.949, 0.884, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.099, 0.096, 0]}, + "t": 36, + "s": [71.021, 35.491, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.795, 1.365, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.133, 0.294, 0]}, + "t": 36.8, + "s": [1.946, 15.801, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.93, 1.015, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.14, 0.068, 0]}, + "t": 37.6, + "s": [28.567, 8.027, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.248, 0.922, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.452, 0.012, 0]}, + "t": 38.4, + "s": [67.532, 49.862, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.928, 1.749, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.094, -1.199, 0]}, + "t": 39.2, + "s": [61.469, 0.74, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.813, 1.078, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.542, 0.075, 0]}, + "t": 40, + "s": [12.831, 3.931, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.066, 0.975, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.15, 0.04, 0]}, + "t": 40.8, + "s": [19.315, -27.951, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.028, 0.938, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.037, -0.035, 0]}, + "t": 41.6, + "s": [27.419, 33.62, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.067, 0.472, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.021, -0.242, 0]}, + "t": 42.4, + "s": [12.92, -9.628, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.982, 1.01, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.037, 0.099, 0]}, + "t": 43.2, + "s": [32.326, 1.452, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.849, 0.922, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.022, 0.009, 0]}, + "t": 44, + "s": [-2.724, 60.543, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.975, -0.245, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.186, -1.156, 0]}, + "t": 44.8, + "s": [24.945, -5.97, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.875, 0.971, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.035, 0.089, 0]}, + "t": 45.6, + "s": [47.481, -1.498, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.25, -0.046, 0]}, + "t": 46.4, + "s": [31.587, 60.823, 100] + }, + {"t": 47.2001953125, "s": [23.622, 20.517, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ty": "sr", + "sy": 2, + "d": 1, + "pt": {"a": 0, "k": 3, "ix": 3}, + "p": {"a": 0, "k": [6, 32], "ix": 4}, + "r": {"a": 0, "k": 0, "ix": 5}, + "or": {"a": 0, "k": 6.599, "ix": 7}, + "os": {"a": 0, "k": 0, "ix": 9}, + "ix": 1, + "nm": "Polystar Path 1", + "mn": "ADBE Vector Shape - Star", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [0.167325377464, 0.716982424259, 1, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-7.382, -25.677], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Polystar 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 4.7998046875, + "op": 48, + "st": 4.7998046875, + "bm": 0 + }, + { + "ddd": 0, + "ind": 38, + "ty": 4, + "nm": "Shape Layer 14", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 5.6, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 9.6, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 27.2, + "s": [100] + }, + {"t": 40, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 0, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 5.6, + "s": [276.873, 250.83, 0], + "to": [-0.189, -0.223, 0], + "ti": [1.057, 0.986, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 6.4, + "s": [275.739, 249.492, 0], + "to": [-1.057, -0.986, 0], + "ti": [2.736, 1.782, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 7.2, + "s": [270.529, 244.915, 0], + "to": [-2.736, -1.782, 0], + "ti": [4.156, 1.618, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8, + "s": [259.324, 238.803, 0], + "to": [-4.156, -1.618, 0], + "ti": [4.345, 0.759, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [245.595, 235.21, 0], + "to": [-4.345, -0.759, 0], + "ti": [3.769, 0.09, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [233.251, 234.251, 0], + "to": [-3.769, -0.09, 0], + "ti": [3.138, -0.25, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 10.4, + "s": [222.982, 234.672, 0], + "to": [-3.138, 0.25, 0], + "ti": [2.634, -0.412, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 11.2, + "s": [214.421, 235.749, 0], + "to": [-2.634, 0.412, 0], + "ti": [2.24, -0.491, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12, + "s": [207.179, 237.146, 0], + "to": [-2.24, 0.491, 0], + "ti": [1.931, -0.529, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12.8, + "s": [200.979, 238.697, 0], + "to": [-1.931, 0.529, 0], + "ti": [1.683, -0.547, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 13.6, + "s": [195.596, 240.321, 0], + "to": [-1.683, 0.547, 0], + "ti": [1.48, -0.555, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 14.4, + "s": [190.881, 241.977, 0], + "to": [-1.48, 0.555, 0], + "ti": [1.309, -0.559, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 15.2, + "s": [186.716, 243.649, 0], + "to": [-1.309, 0.559, 0], + "ti": [1.16, -0.566, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16, + "s": [183.025, 245.334, 0], + "to": [-1.16, 0.566, 0], + "ti": [1.025, -0.581, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16.8, + "s": [179.755, 247.045, 0], + "to": [-1.025, 0.581, 0], + "ti": [0.884, -0.616, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 17.6, + "s": [176.877, 248.822, 0], + "to": [-0.884, 0.616, 0], + "ti": [0.678, -0.697, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [174.448, 250.742, 0], + "to": [-0.678, 0.697, 0], + "ti": [0.181, -0.747, 0] + }, + { + "i": {"x": 0.833, "y": 0.991}, + "o": {"x": 0.167, "y": 0.01}, + "t": 19.2, + "s": [172.806, 253.001, 0], + "to": [-0.181, 0.747, 0], + "ti": [-0.395, -0.538, 0] + }, + { + "i": {"x": 0.833, "y": 0.883}, + "o": {"x": 0.167, "y": 0.132}, + "t": 20, + "s": [173.36, 255.224, 0], + "to": [0.395, 0.538, 0], + "ti": [-0.6, -0.241, 0] + }, + { + "i": {"x": 0.833, "y": 0.854}, + "o": {"x": 0.167, "y": 0.168}, + "t": 20.8, + "s": [175.177, 256.227, 0], + "to": [0.6, 0.241, 0], + "ti": [-0.564, -0.106, 0] + }, + { + "i": {"x": 0.833, "y": 0.846}, + "o": {"x": 0.167, "y": 0.176}, + "t": 21.6, + "s": [176.961, 256.669, 0], + "to": [0.564, 0.106, 0], + "ti": [-0.502, -0.043, 0] + }, + { + "i": {"x": 0.833, "y": 0.844}, + "o": {"x": 0.167, "y": 0.179}, + "t": 22.4, + "s": [178.564, 256.865, 0], + "to": [0.502, 0.043, 0], + "ti": [-0.439, -0.008, 0] + }, + { + "i": {"x": 0.833, "y": 0.845}, + "o": {"x": 0.167, "y": 0.179}, + "t": 23.2, + "s": [179.975, 256.928, 0], + "to": [0.439, 0.008, 0], + "ti": [-0.38, 0.014, 0] + }, + { + "i": {"x": 0.833, "y": 0.846}, + "o": {"x": 0.167, "y": 0.18}, + "t": 24, + "s": [181.2, 256.911, 0], + "to": [0.38, -0.014, 0], + "ti": [-0.325, 0.028, 0] + }, + { + "i": {"x": 0.833, "y": 0.848}, + "o": {"x": 0.167, "y": 0.179}, + "t": 24.8, + "s": [182.253, 256.843, 0], + "to": [0.325, -0.028, 0], + "ti": [-0.275, 0.036, 0] + }, + { + "i": {"x": 0.833, "y": 0.851}, + "o": {"x": 0.167, "y": 0.178}, + "t": 25.6, + "s": [183.148, 256.743, 0], + "to": [0.275, -0.036, 0], + "ti": [-0.23, 0.04, 0] + }, + { + "i": {"x": 0.833, "y": 0.854}, + "o": {"x": 0.167, "y": 0.176}, + "t": 26.4, + "s": [183.9, 256.626, 0], + "to": [0.23, -0.04, 0], + "ti": [-0.19, 0.041, 0] + }, + { + "i": {"x": 0.833, "y": 0.856}, + "o": {"x": 0.167, "y": 0.174}, + "t": 27.2, + "s": [184.526, 256.502, 0], + "to": [0.19, -0.041, 0], + "ti": [-0.155, 0.04, 0] + }, + { + "i": {"x": 0.833, "y": 0.861}, + "o": {"x": 0.167, "y": 0.171}, + "t": 28, + "s": [185.04, 256.378, 0], + "to": [0.155, -0.04, 0], + "ti": [-0.125, 0.037, 0] + }, + { + "i": {"x": 0.833, "y": 0.863}, + "o": {"x": 0.167, "y": 0.171}, + "t": 28.8, + "s": [185.458, 256.261, 0], + "to": [0.125, -0.037, 0], + "ti": [-0.1, 0.031, 0] + }, + { + "i": {"x": 0.833, "y": 0.861}, + "o": {"x": 0.167, "y": 0.171}, + "t": 29.6, + "s": [185.791, 256.158, 0], + "to": [0.1, -0.031, 0], + "ti": [-0.082, 0.022, 0] + }, + { + "i": {"x": 0.833, "y": 0.846}, + "o": {"x": 0.167, "y": 0.175}, + "t": 30.4, + "s": [186.06, 256.075, 0], + "to": [0.082, -0.022, 0], + "ti": [-0.073, 0.001, 0] + }, + { + "i": {"x": 0.833, "y": 0.832}, + "o": {"x": 0.167, "y": 0.162}, + "t": 31.2, + "s": [186.284, 256.027, 0], + "to": [0.073, -0.001, 0], + "ti": [-0.069, -0.03, 0] + }, + { + "i": {"x": 0.833, "y": 0.874}, + "o": {"x": 0.167, "y": 0.108}, + "t": 32, + "s": [186.495, 256.07, 0], + "to": [0.069, 0.03, 0], + "ti": [-0.067, -0.059, 0] + }, + { + "i": {"x": 0.833, "y": 0.918}, + "o": {"x": 0.167, "y": 0.069}, + "t": 32.8, + "s": [186.699, 256.205, 0], + "to": [0.067, 0.059, 0], + "ti": [-0.065, -0.084, 0] + }, + { + "i": {"x": 0.833, "y": 0.944}, + "o": {"x": 0.167, "y": 0.048}, + "t": 33.6, + "s": [186.897, 256.422, 0], + "to": [0.065, 0.084, 0], + "ti": [-0.063, -0.106, 0] + }, + { + "i": {"x": 0.833, "y": 0.961}, + "o": {"x": 0.167, "y": 0.035}, + "t": 34.4, + "s": [187.09, 256.71, 0], + "to": [0.063, 0.106, 0], + "ti": [-0.062, -0.125, 0] + }, + { + "i": {"x": 0.833, "y": 0.97}, + "o": {"x": 0.167, "y": 0.027}, + "t": 35.2, + "s": [187.278, 257.059, 0], + "to": [0.062, 0.125, 0], + "ti": [-0.059, -0.141, 0] + }, + { + "i": {"x": 0.833, "y": 0.977}, + "o": {"x": 0.167, "y": 0.022}, + "t": 36, + "s": [187.46, 257.46, 0], + "to": [0.059, 0.141, 0], + "ti": [-0.057, -0.153, 0] + }, + { + "i": {"x": 0.833, "y": 0.981}, + "o": {"x": 0.167, "y": 0.018}, + "t": 36.8, + "s": [187.635, 257.904, 0], + "to": [0.057, 0.153, 0], + "ti": [-0.059, -0.163, 0] + }, + { + "i": {"x": 0.833, "y": 0.979}, + "o": {"x": 0.167, "y": 0.02}, + "t": 37.6, + "s": [187.802, 258.381, 0], + "to": [0.059, 0.163, 0], + "ti": [-0.07, -0.168, 0] + }, + { + "i": {"x": 0.833, "y": 0.971}, + "o": {"x": 0.167, "y": 0.028}, + "t": 38.4, + "s": [187.988, 258.88, 0], + "to": [0.07, 0.168, 0], + "ti": [-0.084, -0.171, 0] + }, + { + "i": {"x": 0.833, "y": 0.963}, + "o": {"x": 0.167, "y": 0.035}, + "t": 39.2, + "s": [188.22, 259.391, 0], + "to": [0.084, 0.171, 0], + "ti": [-0.097, -0.171, 0] + }, + { + "i": {"x": 0.833, "y": 0.956}, + "o": {"x": 0.167, "y": 0.044}, + "t": 40, + "s": [188.492, 259.907, 0], + "to": [0.097, 0.171, 0], + "ti": [-0.108, -0.169, 0] + }, + { + "i": {"x": 0.833, "y": 0.948}, + "o": {"x": 0.167, "y": 0.051}, + "t": 40.8, + "s": [188.799, 260.419, 0], + "to": [0.108, 0.169, 0], + "ti": [-0.117, -0.165, 0] + }, + { + "i": {"x": 0.833, "y": 0.941}, + "o": {"x": 0.167, "y": 0.059}, + "t": 41.6, + "s": [189.138, 260.923, 0], + "to": [0.117, 0.165, 0], + "ti": [-0.125, -0.159, 0] + }, + { + "i": {"x": 0.833, "y": 0.933}, + "o": {"x": 0.167, "y": 0.067}, + "t": 42.4, + "s": [189.502, 261.41, 0], + "to": [0.125, 0.159, 0], + "ti": [-0.13, -0.151, 0] + }, + { + "i": {"x": 0.833, "y": 0.926}, + "o": {"x": 0.167, "y": 0.076}, + "t": 43.2, + "s": [189.886, 261.876, 0], + "to": [0.13, 0.151, 0], + "ti": [-0.134, -0.141, 0] + }, + { + "i": {"x": 0.833, "y": 0.919}, + "o": {"x": 0.167, "y": 0.084}, + "t": 44, + "s": [190.284, 262.315, 0], + "to": [0.134, 0.141, 0], + "ti": [-0.135, -0.13, 0] + }, + { + "i": {"x": 0.833, "y": 0.911}, + "o": {"x": 0.167, "y": 0.093}, + "t": 44.8, + "s": [190.69, 262.722, 0], + "to": [0.135, 0.13, 0], + "ti": [-0.135, -0.117, 0] + }, + { + "i": {"x": 0.833, "y": 0.904}, + "o": {"x": 0.167, "y": 0.103}, + "t": 45.6, + "s": [191.097, 263.093, 0], + "to": [0.135, 0.117, 0], + "ti": [-0.132, -0.103, 0] + }, + { + "i": {"x": 0.833, "y": 0.891}, + "o": {"x": 0.167, "y": 0.112}, + "t": 46.4, + "s": [191.499, 263.423, 0], + "to": [0.132, 0.103, 0], + "ti": [-0.065, -0.048, 0] + }, + {"t": 47.2001953125, "s": [191.888, 263.709, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.973, 0.541, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 5.6, + "s": [98.652, 70.754, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.848, 0.518, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.04, 0.102, 0]}, + "t": 6.4, + "s": [52.407, 72.577, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.779, 0.997, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.184, 0.101, 0]}, + "t": 7.2, + "s": [83.757, 80.783, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.979, 0.867, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.134, -0.003, 0]}, + "t": 8, + "s": [109.776, 120.093, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.877, 0.951, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.028, 0.222, 0]}, + "t": 8.8, + "s": [152.905, 82.158, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.679, 0.626, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.257, -0.12, 0]}, + "t": 9.6, + "s": [120.66, 59.419, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.91, 0.958, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.113, 0.107, 0]}, + "t": 10.4, + "s": [105.207, 68.721, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.545, 0.804, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.14, -0.083, 0]}, + "t": 11.2, + "s": [61.164, 101.207, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.937, 1.003, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.072, 0.145, 0]}, + "t": 12, + "s": [57.69, 84.913, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.643, 0.859, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.256, 0.003, 0]}, + "t": 12.8, + "s": [83.888, 62.79, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.821, 0.798, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.109, 0.204, 0]}, + "t": 13.6, + "s": [77.451, 85.785, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.087, 0.898, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.156, 0.142, 0]}, + "t": 14.4, + "s": [56.288, 101.636, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.943, 1.927, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.042, 0.454, 0]}, + "t": 15.2, + "s": [32.111, 124.298, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.091, 0.877, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.178, 0.076, 0]}, + "t": 16, + "s": [81.428, 129.386, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.009, 0.967, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.043, 0.259, 0]}, + "t": 16.8, + "s": [65.685, 67.723, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.955, 0.799, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.008, -0.054, 0]}, + "t": 17.6, + "s": [98.593, 38.482, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.732, 0.902, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.096, 0.142, 0]}, + "t": 18.4, + "s": [62.324, 56.222, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.936, 0.271, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.121, 0.546, 0]}, + "t": 19.2, + "s": [79.166, 81.278, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.932, 0.938, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.276, 0.094, 0]}, + "t": 20, + "s": [116.554, 85.792, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.592, 0.744, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.377, -0.236, 0]}, + "t": 20.8, + "s": [107.89, 120.793, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.083, 0.766, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.073, 0.124, 0]}, + "t": 21.6, + "s": [109.46, 111.669, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.998, 0.945, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.042, 0.129, 0]}, + "t": 22.4, + "s": [96.752, 92.8, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.958, 0.687, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.002, -0.162, 0]}, + "t": 23.2, + "s": [122.109, 58.72, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.192, 0.866, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.084, 0.114, 0]}, + "t": 24, + "s": [97.302, 70.284, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.964, 1.117, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.058, 0.219, 0]}, + "t": 24.8, + "s": [109.621, 102.162, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.897, 0.962, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.063, 0.049, 0]}, + "t": 25.6, + "s": [68.943, 121.676, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.514, 0.947, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.428, -0.071, 0]}, + "t": 26.4, + "s": [92.184, 74.87, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.944, 0.654, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.072, -0.144, 0]}, + "t": 27.2, + "s": [97.803, 100.145, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.734, 0.804, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.175, 0.11, 0]}, + "t": 28, + "s": [57.518, 90.885, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.006, 0.942, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.121, 0.145, 0]}, + "t": 28.8, + "s": [70.533, 61.657, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.907, 0.638, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.006, -0.187, 0]}, + "t": 29.6, + "s": [99.011, 22.279, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.045, 0.875, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.773, 0.108, 0]}, + "t": 30.4, + "s": [68.391, 34.404, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.907, 0.968, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.029, 0.249, 0]}, + "t": 31.2, + "s": [64.692, 74.939, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [8.192, 0.523, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.82, -0.051, 0]}, + "t": 32, + "s": [70.385, 95.308, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.944, 0.92, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.082, 0.101, 0]}, + "t": 32.8, + "s": [71.029, 82.647, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.654, 0.165, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.168, -2.041, 0]}, + "t": 33.6, + "s": [14.793, 22.846, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.026, 0.906, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.11, 0.093, 0]}, + "t": 34.4, + "s": [33.445, 25.195, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.908, 1.479, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.02, 0.754, 0]}, + "t": 35.2, + "s": [92.281, 46.336, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.981, 0.951, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.884, 0.071, 0]}, + "t": 36, + "s": [15.049, 48.962, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.761, 1.318, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.024, -0.118, 0]}, + "t": 36.8, + "s": [7.007, 31.245, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.054, 0.938, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.128, 0.066, 0]}, + "t": 37.6, + "s": [13.248, 38.566, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.957, 1.045, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.033, -0.241, 0]}, + "t": 38.4, + "s": [24.888, 3.264, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.6, 1.009, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.09, 0.029, 0]}, + "t": 39.2, + "s": [5.738, 12.341, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.956, 0.936, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.105, 0.008, 0]}, + "t": 40, + "s": [14.963, -1.634, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.929, 0.639, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.091, -0.275, 0]}, + "t": 40.8, + "s": [50.015, 13.874, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.186, 1.318, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.46, 0.108, 0]}, + "t": 41.6, + "s": [33.27, 10.27, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.869, 0.969, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.078, 0.066, 0]}, + "t": 42.4, + "s": [35.84, -1.726, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.164, 0.842, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.228, -0.049, 0]}, + "t": 43.2, + "s": [-3.278, 56.039, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.948, 1.064, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.055, 0.177, 0]}, + "t": 44, + "s": [-25.859, 19.601, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.951, 0.938, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.139, 0.036, 0]}, + "t": 44.8, + "s": [41.265, -12.971, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.325, 0.731, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.118, -0.247, 0]}, + "t": 45.6, + "s": [16.064, 44.564, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.066, 0.121, 0]}, + "t": 46.4, + "s": [26.47, 30.06, 100] + }, + {"t": 47.2001953125, "s": [-24.557, -2.189, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "o": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "v": [ + [0.012, 10.621], + [-5.695, 5.34], + [-2.557, -7.377], + [3.15, -2.096] + ], + "c": true + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [1, 0.89411765337, 0.113725490868, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-3.421, 4.043], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Rectangle 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 5.599609375, + "op": 48, + "st": 5.599609375, + "bm": 0 + }, + { + "ddd": 0, + "ind": 39, + "ty": 4, + "nm": "Shape Layer 13", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 8, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 12, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 29.6, + "s": [100] + }, + {"t": 42.400390625, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 0, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8, + "s": [278.346, 255.953, 0], + "to": [-0.206, -0.234, 0], + "ti": [0.991, 1.248, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [277.109, 254.547, 0], + "to": [-0.991, -1.248, 0], + "ti": [0.533, 2.822, 0] + }, + { + "i": {"x": 0.833, "y": 0.997}, + "o": {"x": 0.167, "y": 0.002}, + "t": 9.6, + "s": [272.4, 248.463, 0], + "to": [-0.533, -2.822, 0], + "ti": [-2.874, 1.607, 0] + }, + { + "i": {"x": 0.833, "y": 0.849}, + "o": {"x": 0.167, "y": 0.139}, + "t": 10.4, + "s": [273.909, 237.613, 0], + "to": [2.874, -1.607, 0], + "ti": [-4.877, -0.657, 0] + }, + { + "i": {"x": 0.833, "y": 0.854}, + "o": {"x": 0.167, "y": 0.172}, + "t": 11.2, + "s": [289.644, 238.823, 0], + "to": [4.877, 0.657, 0], + "ti": [-4.118, -0.868, 0] + }, + { + "i": {"x": 0.833, "y": 0.855}, + "o": {"x": 0.167, "y": 0.176}, + "t": 12, + "s": [303.171, 241.554, 0], + "to": [4.118, 0.868, 0], + "ti": [-3.424, -0.757, 0] + }, + { + "i": {"x": 0.833, "y": 0.854}, + "o": {"x": 0.167, "y": 0.175}, + "t": 12.8, + "s": [314.351, 244.031, 0], + "to": [3.424, 0.757, 0], + "ti": [-2.889, -0.625, 0] + }, + { + "i": {"x": 0.833, "y": 0.851}, + "o": {"x": 0.167, "y": 0.173}, + "t": 13.6, + "s": [323.717, 246.095, 0], + "to": [2.889, 0.625, 0], + "ti": [-2.477, -0.51, 0] + }, + { + "i": {"x": 0.833, "y": 0.85}, + "o": {"x": 0.167, "y": 0.174}, + "t": 14.4, + "s": [331.687, 247.782, 0], + "to": [2.477, 0.51, 0], + "ti": [-2.154, -0.414, 0] + }, + { + "i": {"x": 0.833, "y": 0.849}, + "o": {"x": 0.167, "y": 0.173}, + "t": 15.2, + "s": [338.58, 249.155, 0], + "to": [2.154, 0.414, 0], + "ti": [-1.892, -0.333, 0] + }, + { + "i": {"x": 0.833, "y": 0.847}, + "o": {"x": 0.167, "y": 0.174}, + "t": 16, + "s": [344.611, 250.265, 0], + "to": [1.892, 0.333, 0], + "ti": [-1.675, -0.265, 0] + }, + { + "i": {"x": 0.833, "y": 0.846}, + "o": {"x": 0.167, "y": 0.173}, + "t": 16.8, + "s": [349.933, 251.155, 0], + "to": [1.675, 0.265, 0], + "ti": [-1.493, -0.207, 0] + }, + { + "i": {"x": 0.833, "y": 0.843}, + "o": {"x": 0.167, "y": 0.175}, + "t": 17.6, + "s": [354.663, 251.856, 0], + "to": [1.493, 0.207, 0], + "ti": [-1.344, -0.162, 0] + }, + { + "i": {"x": 0.833, "y": 0.842}, + "o": {"x": 0.167, "y": 0.174}, + "t": 18.4, + "s": [358.894, 252.395, 0], + "to": [1.344, 0.162, 0], + "ti": [-1.227, -0.138, 0] + }, + { + "i": {"x": 0.833, "y": 0.842}, + "o": {"x": 0.167, "y": 0.172}, + "t": 19.2, + "s": [362.724, 252.827, 0], + "to": [1.227, 0.138, 0], + "ti": [-1.133, -0.127, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.171}, + "t": 20, + "s": [366.255, 253.222, 0], + "to": [1.133, 0.127, 0], + "ti": [-1.051, -0.117, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.171}, + "t": 20.8, + "s": [369.523, 253.587, 0], + "to": [1.051, 0.117, 0], + "ti": [-0.978, -0.109, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.171}, + "t": 21.6, + "s": [372.561, 253.926, 0], + "to": [0.978, 0.109, 0], + "ti": [-0.912, -0.101, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.171}, + "t": 22.4, + "s": [375.391, 254.24, 0], + "to": [0.912, 0.101, 0], + "ti": [-0.852, -0.093, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.171}, + "t": 23.2, + "s": [378.033, 254.529, 0], + "to": [0.852, 0.093, 0], + "ti": [-0.796, -0.085, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.17}, + "t": 24, + "s": [380.502, 254.795, 0], + "to": [0.796, 0.085, 0], + "ti": [-0.745, -0.076, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.17}, + "t": 24.8, + "s": [382.812, 255.037, 0], + "to": [0.745, 0.076, 0], + "ti": [-0.697, -0.068, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.17}, + "t": 25.6, + "s": [384.972, 255.253, 0], + "to": [0.697, 0.068, 0], + "ti": [-0.651, -0.059, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.171}, + "t": 26.4, + "s": [386.993, 255.443, 0], + "to": [0.651, 0.059, 0], + "ti": [-0.608, -0.05, 0] + }, + { + "i": {"x": 0.833, "y": 0.84}, + "o": {"x": 0.167, "y": 0.171}, + "t": 27.2, + "s": [388.881, 255.606, 0], + "to": [0.608, 0.05, 0], + "ti": [-0.567, -0.04, 0] + }, + { + "i": {"x": 0.833, "y": 0.839}, + "o": {"x": 0.167, "y": 0.173}, + "t": 28, + "s": [390.642, 255.741, 0], + "to": [0.567, 0.04, 0], + "ti": [-0.527, -0.03, 0] + }, + { + "i": {"x": 0.833, "y": 0.84}, + "o": {"x": 0.167, "y": 0.173}, + "t": 28.8, + "s": [392.281, 255.845, 0], + "to": [0.527, 0.03, 0], + "ti": [-0.488, -0.019, 0] + }, + { + "i": {"x": 0.833, "y": 0.84}, + "o": {"x": 0.167, "y": 0.174}, + "t": 29.6, + "s": [393.801, 255.919, 0], + "to": [0.488, 0.019, 0], + "ti": [-0.45, -0.008, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.174}, + "t": 30.4, + "s": [395.207, 255.96, 0], + "to": [0.45, 0.008, 0], + "ti": [-0.412, 0.002, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.175}, + "t": 31.2, + "s": [396.499, 255.969, 0], + "to": [0.412, -0.002, 0], + "ti": [-0.375, 0.014, 0] + }, + { + "i": {"x": 0.833, "y": 0.842}, + "o": {"x": 0.167, "y": 0.175}, + "t": 32, + "s": [397.679, 255.945, 0], + "to": [0.375, -0.014, 0], + "ti": [-0.338, 0.025, 0] + }, + { + "i": {"x": 0.833, "y": 0.845}, + "o": {"x": 0.167, "y": 0.174}, + "t": 32.8, + "s": [398.748, 255.888, 0], + "to": [0.338, -0.025, 0], + "ti": [-0.301, 0.036, 0] + }, + { + "i": {"x": 0.833, "y": 0.847}, + "o": {"x": 0.167, "y": 0.173}, + "t": 33.6, + "s": [399.706, 255.797, 0], + "to": [0.301, -0.036, 0], + "ti": [-0.264, 0.047, 0] + }, + { + "i": {"x": 0.833, "y": 0.85}, + "o": {"x": 0.167, "y": 0.17}, + "t": 34.4, + "s": [400.554, 255.673, 0], + "to": [0.264, -0.047, 0], + "ti": [-0.227, 0.057, 0] + }, + { + "i": {"x": 0.833, "y": 0.859}, + "o": {"x": 0.167, "y": 0.165}, + "t": 35.2, + "s": [401.291, 255.517, 0], + "to": [0.227, -0.057, 0], + "ti": [-0.189, 0.067, 0] + }, + { + "i": {"x": 0.833, "y": 0.87}, + "o": {"x": 0.167, "y": 0.153}, + "t": 36, + "s": [401.915, 255.33, 0], + "to": [0.189, -0.067, 0], + "ti": [-0.151, 0.077, 0] + }, + { + "i": {"x": 0.833, "y": 0.89}, + "o": {"x": 0.167, "y": 0.133}, + "t": 36.8, + "s": [402.427, 255.112, 0], + "to": [0.151, -0.077, 0], + "ti": [-0.113, 0.086, 0] + }, + { + "i": {"x": 0.833, "y": 0.92}, + "o": {"x": 0.167, "y": 0.094}, + "t": 37.6, + "s": [402.824, 254.867, 0], + "to": [0.113, -0.086, 0], + "ti": [-0.074, 0.094, 0] + }, + { + "i": {"x": 0.833, "y": 0.963}, + "o": {"x": 0.167, "y": 0.041}, + "t": 38.4, + "s": [403.104, 254.596, 0], + "to": [0.074, -0.094, 0], + "ti": [-0.034, 0.101, 0] + }, + { + "i": {"x": 0.833, "y": 0.997}, + "o": {"x": 0.167, "y": 0.003}, + "t": 39.2, + "s": [403.266, 254.302, 0], + "to": [0.034, -0.101, 0], + "ti": [0.002, 0.108, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40, + "s": [403.307, 253.989, 0], + "to": [-0.002, -0.108, 0], + "ti": [0.028, 0.114, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40.8, + "s": [403.256, 253.656, 0], + "to": [-0.028, -0.114, 0], + "ti": [0.05, 0.119, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 41.6, + "s": [403.14, 253.307, 0], + "to": [-0.05, -0.119, 0], + "ti": [0.071, 0.117, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 42.4, + "s": [402.953, 252.945, 0], + "to": [-0.071, -0.117, 0], + "ti": [0.081, 0.103, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 43.2, + "s": [402.716, 252.603, 0], + "to": [-0.081, -0.103, 0], + "ti": [0.084, 0.081, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44, + "s": [402.468, 252.328, 0], + "to": [-0.084, -0.081, 0], + "ti": [0.087, 0.059, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44.8, + "s": [402.212, 252.118, 0], + "to": [-0.087, -0.059, 0], + "ti": [0.089, 0.038, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 45.6, + "s": [401.947, 251.973, 0], + "to": [-0.089, -0.038, 0], + "ti": [0.091, 0.018, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 46.4, + "s": [401.676, 251.89, 0], + "to": [-0.091, -0.018, 0], + "ti": [0.046, 0.004, 0] + }, + {"t": 47.2001953125, "s": [401.399, 251.868, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.884, 0.999, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 8, + "s": [150.023, 84.302, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.718, 0.778, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.295, -0.001, 0]}, + "t": 8.8, + "s": [115.536, 94.772, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.873, 0.898, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.118, 0.133, 0]}, + "t": 9.6, + "s": [101.947, 84.391, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.035, 1.291, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.243, 0.465, 0]}, + "t": 10.4, + "s": [69.48, 67.085, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.989, 0.813, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.025, 0.065, 0]}, + "t": 11.2, + "s": [52.556, 63.303, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.856, 0.84, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.012, 0.15, 0]}, + "t": 12, + "s": [76.674, 80.31, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.805, 0.955, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.197, 0.174, 0]}, + "t": 12.8, + "s": [55.698, 101.414, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.152, 1.045, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.145, -0.098, 0]}, + "t": 13.6, + "s": [40.385, 120.878, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.954, 1.219, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.054, 0.029, 0]}, + "t": 14.4, + "s": [19.82, 111.938, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.016, 0.871, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.102, 0.06, 0]}, + "t": 15.2, + "s": [78.004, 125.754, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.949, 0.912, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.013, 0.234, 0]}, + "t": 16, + "s": [51.803, 75.606, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.062, 0.955, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.135, 1.443, 0]}, + "t": 16.8, + "s": [82.948, 47.853, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.885, -0.219, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.035, -0.097, 0]}, + "t": 17.6, + "s": [71.038, 46.152, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.784, 0.414, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.302, 0.089, 0]}, + "t": 18.4, + "s": [91.761, 46.937, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.922, 0.919, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.136, 0.097, 0]}, + "t": 19.2, + "s": [99.655, 57.625, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.883, 0.788, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.133, -3.003, 0]}, + "t": 20, + "s": [112.222, 122.076, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [4.249, 0.248, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.289, 0.137, 0]}, + "t": 20.8, + "s": [111.361, 120.336, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.223, 0.834, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.081, 0.094, 0]}, + "t": 21.6, + "s": [111.012, 117.65, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.926, 1.003, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.061, 0.167, 0]}, + "t": 22.4, + "s": [124.959, 96.101, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.488, 0.968, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.648, 0.003, 0]}, + "t": 23.2, + "s": [73.624, 74.745, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.933, 0.958, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.071, -0.053, 0]}, + "t": 24, + "s": [79.474, 96.927, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.44, 0.823, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.337, -0.086, 0]}, + "t": 24.8, + "s": [39.363, 83.33, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.955, 0.353, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.098, 0.158, 0]}, + "t": 25.6, + "s": [47.32, 90.031, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.968, 0.971, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.099, 0.096, 0]}, + "t": 26.4, + "s": [92.847, 97.529, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.719, 0.771, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.051, -0.044, 0]}, + "t": 27.2, + "s": [72.017, 148.186, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.036, 0.926, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.118, 0.131, 0]}, + "t": 28, + "s": [84.935, 114.918, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.917, 1.042, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.025, -0.658, 0]}, + "t": 28.8, + "s": [115.633, 56.769, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-3.334, 1.406, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-14.614, 0.028, 0]}, + "t": 29.6, + "s": [71.733, 63.301, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.842, 0.897, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.085, 0.069, 0]}, + "t": 30.4, + "s": [71.982, 53.5, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.296, 1.262, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.177, 0.435, 0]}, + "t": 31.2, + "s": [84.68, 111.004, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.873, 0.865, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.065, 0.063, 0]}, + "t": 32, + "s": [96.026, 124.642, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.082, 0.913, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.241, 0.218, 0]}, + "t": 32.8, + "s": [44.359, 68.117, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.979, 1.948, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.041, 1.942, 0]}, + "t": 33.6, + "s": [16.99, 33.186, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.848, 0.777, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.028, 0.077, 0]}, + "t": 34.4, + "s": [71.31, 31.618, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.963, 1.037, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.185, 0.133, 0]}, + "t": 35.2, + "s": [30.563, 51.009, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.958, 0.898, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.066, 0.026, 0]}, + "t": 36, + "s": [-2.843, 83.398, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.188, 0.937, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.084, 0.448, 0]}, + "t": 36.8, + "s": [15.771, 36.624, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.924, -0.026, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.058, -0.252, 0]}, + "t": 37.6, + "s": [6.523, 25.933, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.308, 1.025, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.823, 0.091, 0]}, + "t": 38.4, + "s": [36.606, 28.591, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.857, 0.867, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.066, 0.019, 0]}, + "t": 39.2, + "s": [33.84, 58.624, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.022, 0.96, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.199, 0.224, 0]}, + "t": 40, + "s": [46.823, 19.638, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.667, 0.763, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.018, -0.078, 0]}, + "t": 40.8, + "s": [56.147, -3.469, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.868, 0.839, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.111, 0.129, 0]}, + "t": 41.6, + "s": [44.338, 8.441, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.071, 1.087, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.227, 0.172, 0]}, + "t": 42.4, + "s": [8.892, 30.372, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.016, 0.969, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.038, 0.043, 0]}, + "t": 43.2, + "s": [-11.629, 50.878, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.012, 0.823, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.013, -0.049, 0]}, + "t": 44, + "s": [26.385, 8.842, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.938, 1.146, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.011, 0.158, 0]}, + "t": 44.8, + "s": [-18.969, 35.342, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.128, 0.932, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.244, 0.053, 0]}, + "t": 45.6, + "s": [33.051, 65.059, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.051, -0.359, 0]}, + "t": 46.4, + "s": [19.792, -16.798, 100] + }, + {"t": 47.2001953125, "s": [53.472, -1.378, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "o": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "v": [ + [0.012, 10.621], + [-5.695, 5.34], + [-2.557, -7.377], + [3.15, -2.096] + ], + "c": true + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [1, 0.89411765337, 0.113725490868, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-3.421, 4.043], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Rectangle 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 8, + "op": 48, + "st": 8, + "bm": 0 + }, + { + "ddd": 0, + "ind": 40, + "ty": 4, + "nm": "Shape Layer 12", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 8.8, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 12.8, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 30.4, + "s": [100] + }, + {"t": 43.2001953125, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 0, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [278.886, 263.108, 0], + "to": [-0.396, 0.093, 0], + "ti": [2.046, 0.295, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [276.51, 263.668, 0], + "to": [-2.046, -0.295, 0], + "ti": [4.357, 2.028, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 10.4, + "s": [266.607, 261.339, 0], + "to": [-4.357, -2.028, 0], + "ti": [5.491, 3.808, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 11.2, + "s": [250.369, 251.499, 0], + "to": [-5.491, -3.808, 0], + "ti": [5.141, 4.15, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12, + "s": [233.659, 238.49, 0], + "to": [-5.141, -4.15, 0], + "ti": [4.303, 3.645, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12.8, + "s": [219.52, 226.601, 0], + "to": [-4.303, -3.645, 0], + "ti": [3.589, 3.053, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 13.6, + "s": [207.84, 216.618, 0], + "to": [-3.589, -3.053, 0], + "ti": [3.064, 2.559, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 14.4, + "s": [197.984, 208.283, 0], + "to": [-3.064, -2.559, 0], + "ti": [2.675, 2.164, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 15.2, + "s": [189.458, 201.262, 0], + "to": [-2.675, -2.164, 0], + "ti": [2.381, 1.843, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16, + "s": [181.933, 195.3, 0], + "to": [-2.381, -1.843, 0], + "ti": [2.153, 1.575, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16.8, + "s": [175.17, 190.206, 0], + "to": [-2.153, -1.575, 0], + "ti": [1.971, 1.344, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 17.6, + "s": [169.014, 185.852, 0], + "to": [-1.971, -1.344, 0], + "ti": [1.824, 1.14, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [163.346, 182.143, 0], + "to": [-1.824, -1.14, 0], + "ti": [1.703, 0.954, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [158.073, 179.012, 0], + "to": [-1.703, -0.954, 0], + "ti": [1.601, 0.778, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20, + "s": [153.127, 176.419, 0], + "to": [-1.601, -0.778, 0], + "ti": [1.512, 0.605, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [148.464, 174.344, 0], + "to": [-1.512, -0.605, 0], + "ti": [1.427, 0.431, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 21.6, + "s": [144.054, 172.787, 0], + "to": [-1.427, -0.431, 0], + "ti": [1.341, 0.252, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 22.4, + "s": [139.899, 171.759, 0], + "to": [-1.341, -0.252, 0], + "ti": [1.243, 0.072, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 23.2, + "s": [136.007, 171.274, 0], + "to": [-1.243, -0.072, 0], + "ti": [1.123, -0.099, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24, + "s": [132.443, 171.328, 0], + "to": [-1.123, 0.099, 0], + "ti": [0.987, -0.242, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24.8, + "s": [129.266, 171.868, 0], + "to": [-0.987, 0.242, 0], + "ti": [0.844, -0.342, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 25.6, + "s": [126.522, 172.779, 0], + "to": [-0.844, 0.342, 0], + "ti": [0.71, -0.397, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26.4, + "s": [124.202, 173.921, 0], + "to": [-0.71, 0.397, 0], + "ti": [0.594, -0.415, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 27.2, + "s": [122.26, 175.163, 0], + "to": [-0.594, 0.415, 0], + "ti": [0.499, -0.407, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28, + "s": [120.635, 176.409, 0], + "to": [-0.499, 0.407, 0], + "ti": [0.424, -0.386, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28.8, + "s": [119.263, 177.604, 0], + "to": [-0.424, 0.386, 0], + "ti": [0.362, -0.359, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 29.6, + "s": [118.093, 178.724, 0], + "to": [-0.362, 0.359, 0], + "ti": [0.312, -0.329, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 30.4, + "s": [117.089, 179.757, 0], + "to": [-0.312, 0.329, 0], + "ti": [0.271, -0.298, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 31.2, + "s": [116.22, 180.697, 0], + "to": [-0.271, 0.298, 0], + "ti": [0.237, -0.267, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32, + "s": [115.461, 181.543, 0], + "to": [-0.237, 0.267, 0], + "ti": [0.208, -0.237, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [114.796, 182.298, 0], + "to": [-0.208, 0.237, 0], + "ti": [0.183, -0.208, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [114.21, 182.964, 0], + "to": [-0.183, 0.208, 0], + "ti": [0.161, -0.181, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [113.696, 183.547, 0], + "to": [-0.161, 0.181, 0], + "ti": [0.141, -0.155, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 35.2, + "s": [113.244, 184.051, 0], + "to": [-0.141, 0.155, 0], + "ti": [0.122, -0.131, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36, + "s": [112.85, 184.48, 0], + "to": [-0.122, 0.131, 0], + "ti": [0.105, -0.107, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36.8, + "s": [112.51, 184.835, 0], + "to": [-0.105, 0.107, 0], + "ti": [0.089, -0.086, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 37.6, + "s": [112.219, 185.124, 0], + "to": [-0.089, 0.086, 0], + "ti": [0.074, -0.066, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 38.4, + "s": [111.973, 185.351, 0], + "to": [-0.074, 0.066, 0], + "ti": [0.06, -0.046, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 39.2, + "s": [111.772, 185.518, 0], + "to": [-0.06, 0.046, 0], + "ti": [0.046, -0.026, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40, + "s": [111.612, 185.626, 0], + "to": [-0.046, 0.026, 0], + "ti": [0.035, -0.013, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40.8, + "s": [111.493, 185.674, 0], + "to": [-0.035, 0.013, 0], + "ti": [0.027, -0.015, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 41.6, + "s": [111.404, 185.706, 0], + "to": [-0.027, 0.015, 0], + "ti": [0.021, -0.022, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 42.4, + "s": [111.333, 185.761, 0], + "to": [-0.021, 0.022, 0], + "ti": [0.015, -0.028, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 43.2, + "s": [111.28, 185.837, 0], + "to": [-0.015, 0.028, 0], + "ti": [0.01, -0.033, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44, + "s": [111.243, 185.929, 0], + "to": [-0.01, 0.033, 0], + "ti": [0.006, -0.036, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44.8, + "s": [111.219, 186.034, 0], + "to": [-0.006, 0.036, 0], + "ti": [0.003, -0.038, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 45.6, + "s": [111.207, 186.148, 0], + "to": [-0.003, 0.038, 0], + "ti": [0, -0.039, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 46.4, + "s": [111.203, 186.265, 0], + "to": [0, 0.039, 0], + "ti": [0, -0.019, 0] + }, + {"t": 47.2001953125, "s": [111.205, 186.381, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.894, 0.956, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 8.8, + "s": [70.371, 73.099, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.011, 0.757, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.387, -0.094, 0]}, + "t": 9.6, + "s": [81.451, 49.764, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.535, 0.952, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.009, 0.127, 0]}, + "t": 10.4, + "s": [84.489, 60.747, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.814, 1.157, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.102, -0.112, 0]}, + "t": 11.2, + "s": [81.065, 81.842, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.818, 1.017, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.151, 0.054, 0]}, + "t": 12, + "s": [65.388, 72.828, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.16, 0.963, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.154, 0.014, 0]}, + "t": 12.8, + "s": [46.083, 98.818, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.958, 0.997, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.055, -0.066, 0]}, + "t": 13.6, + "s": [23.236, 67.65, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.924, 0.911, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.086, -0.003, 0]}, + "t": 14.4, + "s": [90.073, 84.988, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.171, 1.805, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.806, 1.29, 0]}, + "t": 15.2, + "s": [57.21, 68.22, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.965, 1.029, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.09, 0.076, 0]}, + "t": 16, + "s": [60.29, 67.062, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.989, 0.774, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.06, 0.022, 0]}, + "t": 16.8, + "s": [100.479, 79.398, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.87, 1.114, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.013, 0.132, 0]}, + "t": 17.6, + "s": [77.165, 62.735, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.823, 0.904, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.233, 0.048, 0]}, + "t": 18.4, + "s": [97.376, 34.245, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.123, 1.029, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.158, 0.644, 0]}, + "t": 19.2, + "s": [108.611, 101.546, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.977, 0.834, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.05, 0.021, 0]}, + "t": 20, + "s": [121.197, 111.543, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.983, 1.031, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.031, 0.167, 0]}, + "t": 20.8, + "s": [90.035, 98.098, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.835, 0.878, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.021, 0.023, 0]}, + "t": 21.6, + "s": [112.765, 84.756, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.751, 1.24, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.168, 0.262, 0]}, + "t": 22.4, + "s": [94.608, 103.076, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.906, 0.913, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.125, 0.062, 0]}, + "t": 23.2, + "s": [76.78, 111.632, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.547, -0.27, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.74, 2.197, 0]}, + "t": 24, + "s": [41.278, 78.465, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.914, 1.188, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.072, 0.089, 0]}, + "t": 24.8, + "s": [36.77, 77.159, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.44, 0.893, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [2.652, 0.058, 0]}, + "t": 25.6, + "s": [70.888, 58.554, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.52, 1.21, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.098, 0.377, 0]}, + "t": 26.4, + "s": [71.996, 119.193, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.977, 0.952, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.101, 0.06, 0]}, + "t": 27.2, + "s": [78.321, 136.39, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.766, 1.004, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.031, -0.115, 0]}, + "t": 28, + "s": [108.467, 75.868, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.959, 0.964, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.129, 0.004, 0]}, + "t": 28.8, + "s": [86.503, 101.319, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.84, 0.825, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.079, -0.062, 0]}, + "t": 29.6, + "s": [46.776, 74.608, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.98, 0.909, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.174, 0.159, 0]}, + "t": 30.4, + "s": [67.187, 89.94, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.699, 3.528, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.027, 1.019, 0]}, + "t": 31.2, + "s": [85.904, 106.857, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.914, 0.895, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.115, 0.081, 0]}, + "t": 32, + "s": [71.727, 108.364, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.929, 0.834, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [2.983, 0.401, 0]}, + "t": 32.8, + "s": [34.691, 61.105, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.084, 1.299, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.08, 0.168, 0]}, + "t": 33.6, + "s": [33.627, 48.718, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.001, 0.999, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.042, 0.065, 0]}, + "t": 34.4, + "s": [59.325, 36.458, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.944, 0.928, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.001, -0.001, 0]}, + "t": 35.2, + "s": [7.81, 92.753, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.889, 0.958, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.168, -0.538, 0]}, + "t": 36, + "s": [59.941, 37.215, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.33, 1.334, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.335, -0.083, 0]}, + "t": 36.8, + "s": [42.632, 44.663, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.973, 0.992, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.067, 0.067, 0]}, + "t": 37.6, + "s": [36.89, 40.928, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.915, 0.649, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.04, -0.009, 0]}, + "t": 38.4, + "s": [65.36, 59.633, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.366, 0.982, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [3.346, 0.109, 0]}, + "t": 39.2, + "s": [46.071, 42.784, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.284, 0.916, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.096, -0.023, 0]}, + "t": 40, + "s": [45.578, -11.282, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.976, -5.805, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.094, 7.455, 0]}, + "t": 40.8, + "s": [42.321, 31.087, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.91, 0.98, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.033, 0.084, 0]}, + "t": 41.6, + "s": [17.582, 31.566, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [4.783, 0.838, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.171, -0.026, 0]}, + "t": 42.4, + "s": [35.243, 70.197, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.95, 1.095, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.082, 0.171, 0]}, + "t": 43.2, + "s": [36.597, 40.776, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.762, 1.02, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.123, 0.044, 0]}, + "t": 44, + "s": [-26.212, 12.89, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.889, 0.94, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.128, 0.016, 0]}, + "t": 44.8, + "s": [-0.792, 72.669, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.804, 0.91, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.335, -0.211, 0]}, + "t": 45.6, + "s": [46.469, -1.813, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.145, 1.163, 0]}, + "t": 46.4, + "s": [62.111, 19.267, 100] + }, + {"t": 47.2001953125, "s": [83.28, 20.895, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "o": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "v": [ + [0.012, 10.621], + [-5.695, 5.34], + [-2.557, -7.377], + [3.15, -2.096] + ], + "c": true + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [1, 0.89411765337, 0.113725490868, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-3.421, 4.043], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Rectangle 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 8.7998046875, + "op": 48, + "st": 8.7998046875, + "bm": 0 + }, + { + "ddd": 0, + "ind": 41, + "ty": 4, + "nm": "Shape Layer 11", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 4, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 8, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 25.6, + "s": [100] + }, + {"t": 38.400390625, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 0, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 4, + "s": [280.895, 263.305, 0], + "to": [-0.567, 0.175, 0], + "ti": [2.713, -0.992, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 4.8, + "s": [277.49, 264.357, 0], + "to": [-2.713, 0.992, 0], + "ti": [6.007, -2.449, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 5.6, + "s": [264.618, 269.257, 0], + "to": [-6.007, 2.449, 0], + "ti": [8.091, -3.591, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 6.4, + "s": [241.447, 279.054, 0], + "to": [-8.091, 3.591, 0], + "ti": [7.873, -3.782, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 7.2, + "s": [216.07, 290.801, 0], + "to": [-7.873, 3.782, 0], + "ti": [6.648, -3.432, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8, + "s": [194.207, 301.746, 0], + "to": [-6.648, 3.432, 0], + "ti": [5.503, -3.025, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [176.185, 311.391, 0], + "to": [-5.503, 3.025, 0], + "ti": [4.615, -2.683, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [161.19, 319.898, 0], + "to": [-4.615, 2.683, 0], + "ti": [3.935, -2.407, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 10.4, + "s": [148.493, 327.489, 0], + "to": [-3.935, 2.407, 0], + "ti": [3.399, -2.181, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 11.2, + "s": [137.583, 334.338, 0], + "to": [-3.399, 2.181, 0], + "ti": [2.966, -1.993, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12, + "s": [128.098, 340.575, 0], + "to": [-2.966, 1.993, 0], + "ti": [2.607, -1.832, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12.8, + "s": [119.785, 346.294, 0], + "to": [-2.607, 1.832, 0], + "ti": [2.302, -1.693, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 13.6, + "s": [112.455, 351.568, 0], + "to": [-2.302, 1.693, 0], + "ti": [2.037, -1.57, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 14.4, + "s": [105.973, 356.452, 0], + "to": [-2.037, 1.57, 0], + "ti": [1.803, -1.461, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 15.2, + "s": [100.233, 360.99, 0], + "to": [-1.803, 1.461, 0], + "ti": [1.593, -1.362, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16, + "s": [95.155, 365.216, 0], + "to": [-1.593, 1.362, 0], + "ti": [1.401, -1.271, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16.8, + "s": [90.677, 369.16, 0], + "to": [-1.401, 1.271, 0], + "ti": [1.224, -1.188, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 17.6, + "s": [86.752, 372.844, 0], + "to": [-1.224, 1.188, 0], + "ti": [1.07, -1.108, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [83.332, 376.285, 0], + "to": [-1.07, 1.108, 0], + "ti": [0.937, -1.031, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [80.332, 379.49, 0], + "to": [-0.937, 1.031, 0], + "ti": [0.818, -0.958, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20, + "s": [77.708, 382.471, 0], + "to": [-0.818, 0.958, 0], + "ti": [0.71, -0.889, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [75.425, 385.239, 0], + "to": [-0.71, 0.889, 0], + "ti": [0.612, -0.822, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 21.6, + "s": [73.45, 387.804, 0], + "to": [-0.612, 0.822, 0], + "ti": [0.523, -0.758, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 22.4, + "s": [71.754, 390.173, 0], + "to": [-0.523, 0.758, 0], + "ti": [0.442, -0.696, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 23.2, + "s": [70.313, 392.354, 0], + "to": [-0.442, 0.696, 0], + "ti": [0.369, -0.637, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24, + "s": [69.102, 394.352, 0], + "to": [-0.369, 0.637, 0], + "ti": [0.304, -0.579, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24.8, + "s": [68.096, 396.175, 0], + "to": [-0.304, 0.579, 0], + "ti": [0.245, -0.524, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 25.6, + "s": [67.277, 397.829, 0], + "to": [-0.245, 0.524, 0], + "ti": [0.193, -0.471, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26.4, + "s": [66.624, 399.32, 0], + "to": [-0.193, 0.471, 0], + "ti": [0.147, -0.42, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 27.2, + "s": [66.118, 400.656, 0], + "to": [-0.147, 0.42, 0], + "ti": [0.105, -0.37, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28, + "s": [65.744, 401.84, 0], + "to": [-0.105, 0.37, 0], + "ti": [0.069, -0.322, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28.8, + "s": [65.487, 402.877, 0], + "to": [-0.069, 0.322, 0], + "ti": [0.037, -0.276, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 29.6, + "s": [65.332, 403.773, 0], + "to": [-0.037, 0.276, 0], + "ti": [0.009, -0.231, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 30.4, + "s": [65.265, 404.532, 0], + "to": [-0.009, 0.231, 0], + "ti": [-0.014, -0.188, 0] + }, + { + "i": {"x": 0.833, "y": 0.997}, + "o": {"x": 0.167, "y": 0.004}, + "t": 31.2, + "s": [65.276, 405.16, 0], + "to": [0.014, 0.188, 0], + "ti": [-0.034, -0.146, 0] + }, + { + "i": {"x": 0.833, "y": 0.984}, + "o": {"x": 0.167, "y": 0.02}, + "t": 32, + "s": [65.351, 405.66, 0], + "to": [0.034, 0.146, 0], + "ti": [-0.051, -0.106, 0] + }, + { + "i": {"x": 0.833, "y": 0.952}, + "o": {"x": 0.167, "y": 0.059}, + "t": 32.8, + "s": [65.481, 406.037, 0], + "to": [0.051, 0.106, 0], + "ti": [-0.064, -0.066, 0] + }, + { + "i": {"x": 0.833, "y": 0.889}, + "o": {"x": 0.167, "y": 0.126}, + "t": 33.6, + "s": [65.655, 406.293, 0], + "to": [0.064, 0.066, 0], + "ti": [-0.074, -0.028, 0] + }, + { + "i": {"x": 0.833, "y": 0.83}, + "o": {"x": 0.167, "y": 0.166}, + "t": 34.4, + "s": [65.864, 406.433, 0], + "to": [0.074, 0.028, 0], + "ti": [-0.081, 0.01, 0] + }, + { + "i": {"x": 0.833, "y": 0.846}, + "o": {"x": 0.167, "y": 0.14}, + "t": 35.2, + "s": [66.098, 406.459, 0], + "to": [0.081, -0.01, 0], + "ti": [-0.083, 0.038, 0] + }, + { + "i": {"x": 0.833, "y": 0.88}, + "o": {"x": 0.167, "y": 0.12}, + "t": 36, + "s": [66.349, 406.373, 0], + "to": [0.083, -0.038, 0], + "ti": [-0.078, 0.048, 0] + }, + { + "i": {"x": 0.833, "y": 0.889}, + "o": {"x": 0.167, "y": 0.119}, + "t": 36.8, + "s": [66.596, 406.231, 0], + "to": [0.078, -0.048, 0], + "ti": [-0.069, 0.051, 0] + }, + { + "i": {"x": 0.833, "y": 0.904}, + "o": {"x": 0.167, "y": 0.105}, + "t": 37.6, + "s": [66.819, 406.083, 0], + "to": [0.069, -0.051, 0], + "ti": [-0.057, 0.054, 0] + }, + { + "i": {"x": 0.833, "y": 0.929}, + "o": {"x": 0.167, "y": 0.078}, + "t": 38.4, + "s": [67.01, 405.928, 0], + "to": [0.057, -0.054, 0], + "ti": [-0.042, 0.058, 0] + }, + { + "i": {"x": 0.833, "y": 0.962}, + "o": {"x": 0.167, "y": 0.04}, + "t": 39.2, + "s": [67.16, 405.761, 0], + "to": [0.042, -0.058, 0], + "ti": [-0.023, 0.063, 0] + }, + { + "i": {"x": 0.833, "y": 0.994}, + "o": {"x": 0.167, "y": 0.006}, + "t": 40, + "s": [67.259, 405.58, 0], + "to": [0.023, -0.063, 0], + "ti": [-0.001, 0.07, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40.8, + "s": [67.298, 405.38, 0], + "to": [0.001, -0.07, 0], + "ti": [0.023, 0.076, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 41.6, + "s": [67.266, 405.158, 0], + "to": [-0.023, -0.076, 0], + "ti": [0.046, 0.073, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 42.4, + "s": [67.158, 404.922, 0], + "to": [-0.046, -0.073, 0], + "ti": [0.062, 0.06, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 43.2, + "s": [66.993, 404.72, 0], + "to": [-0.062, -0.06, 0], + "ti": [0.076, 0.046, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44, + "s": [66.783, 404.561, 0], + "to": [-0.076, -0.046, 0], + "ti": [0.086, 0.031, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44.8, + "s": [66.539, 404.446, 0], + "to": [-0.086, -0.031, 0], + "ti": [0.093, 0.016, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 45.6, + "s": [66.269, 404.376, 0], + "to": [-0.093, -0.016, 0], + "ti": [0.097, 0, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 46.4, + "s": [65.982, 404.352, 0], + "to": [-0.097, 0, 0], + "ti": [0.049, -0.004, 0] + }, + {"t": 47.2001953125, "s": [65.686, 404.375, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.938, 0.898, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 4, + "s": [49.45, 148.28, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.038, 1.014, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.246, 0.447, 0]}, + "t": 4.8, + "s": [96.233, 59.296, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.894, 0.934, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.026, 0.012, 0]}, + "t": 5.6, + "s": [84.39, 38.927, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.66, 0.535, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.391, -0.32, 0]}, + "t": 6.4, + "s": [101.568, 62.764, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.929, 0.999, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.074, 0.102, 0]}, + "t": 7.2, + "s": [106.222, 57.834, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.162, 0.853, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.472, -0.001, 0]}, + "t": 8, + "s": [64.691, 35.274, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.955, 0.795, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.093, 0.193, 0]}, + "t": 8.8, + "s": [70.923, 57.653, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.827, 1.022, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.098, 0.141, 0]}, + "t": 9.6, + "s": [127.324, 74.727, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.934, 0.941, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.161, 0.018, 0]}, + "t": 10.4, + "s": [101.458, 99.601, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.386, 1.222, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.314, -0.197, 0]}, + "t": 11.2, + "s": [73.693, 68.044, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.064, 0.905, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.069, 0.061, 0]}, + "t": 12, + "s": [79.522, 77.427, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.928, 1.413, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.036, 0.681, 0]}, + "t": 12.8, + "s": [46.671, 43.016, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.357, 0.941, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.544, 0.069, 0]}, + "t": 13.6, + "s": [104.84, 38.219, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.006, 1.25, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.096, -0.2, 0]}, + "t": 14.4, + "s": [97.095, 66.774, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.947, 0.896, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.006, 0.063, 0]}, + "t": 15.2, + "s": [45.158, 58.378, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.954, 1.295, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.142, 0.42, 0]}, + "t": 16, + "s": [100.992, 91.978, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.782, 0.93, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.105, 0.065, 0]}, + "t": 16.8, + "s": [80.364, 100.301, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.813, 0.641, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.135, -0.451, 0]}, + "t": 17.6, + "s": [89.494, 62.471, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.187, 0.991, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.15, 0.109, 0]}, + "t": 18.4, + "s": [104.25, 68.373, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.922, 0.748, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.058, -0.01, 0]}, + "t": 19.2, + "s": [122.573, 87.899, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.546, 1.004, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.303, 0.124, 0]}, + "t": 20, + "s": [63.056, 70.386, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.939, 0.876, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.088, 0.004, 0]}, + "t": 20.8, + "s": [66.633, 34.869, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.782, 0.805, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.233, 0.254, 0]}, + "t": 21.6, + "s": [129.403, 72.011, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.806, 1.026, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.135, 0.145, 0]}, + "t": 22.4, + "s": [112.863, 90.111, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.928, 0.817, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.146, 0.02, 0]}, + "t": 23.2, + "s": [86.228, 114.396, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.021, 0.937, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.514, 0.153, 0]}, + "t": 24, + "s": [50.891, 82.427, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.248, 0.388, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.017, -0.251, 0]}, + "t": 24.8, + "s": [55.82, 44.045, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.895, 0.966, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.062, 0.096, 0]}, + "t": 25.6, + "s": [49.632, 53.61, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.992, 0.911, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.404, -0.058, 0]}, + "t": 26.4, + "s": [74.255, 114.253, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.123, 0.931, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.009, 1.243, 0]}, + "t": 27.2, + "s": [80.651, 78.395, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.943, 0.169, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.092, -0.398, 0]}, + "t": 28, + "s": [74.861, 75.817, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.802, 1.723, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.176, 0.093, 0]}, + "t": 28.8, + "s": [19.702, 76.263, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.938, 1.043, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.144, 0.075, 0]}, + "t": 29.6, + "s": [37.393, 80.265, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.507, 0.949, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.243, 0.028, 0]}, + "t": 30.4, + "s": [61.705, 41.546, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.85, 0.881, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.1, -0.133, 0]}, + "t": 31.2, + "s": [55.488, 100.178, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.039, 0.614, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.187, 0.279, 0]}, + "t": 32, + "s": [24.961, 77.623, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.03, 0.973, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.026, 0.106, 0]}, + "t": 32.8, + "s": [0.375, 68.025, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.01, 1.132, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.022, -0.04, 0]}, + "t": 33.6, + "s": [36.365, 33.155, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.865, 0.968, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.009, 0.051, 0]}, + "t": 34.4, + "s": [-12.521, 56.708, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.071, 0.909, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.219, -0.051, 0]}, + "t": 35.2, + "s": [42.47, -4.293, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.953, 1.38, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.038, 0.941, 0]}, + "t": 36, + "s": [76.363, 33.422, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.979, 0.988, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.108, 0.068, 0]}, + "t": 36.8, + "s": [13.419, 37.087, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.943, 1.072, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.028, -0.014, 0]}, + "t": 37.6, + "s": [40.835, 16.71, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.911, 1.007, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.176, 0.039, 0]}, + "t": 38.4, + "s": [20.376, 34.131, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [3.319, 0.906, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.367, 0.007, 0]}, + "t": 39.2, + "s": [26.948, 1.687, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.176, 0.438, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.08, 0.755, 0]}, + "t": 40, + "s": [27.375, 36.914, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.984, 0.868, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.057, 0.098, 0]}, + "t": 40.8, + "s": [15.071, 41.282, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.862, 1.428, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.019, 0.226, 0]}, + "t": 41.6, + "s": [53.354, 66.388, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.873, 0.951, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.21, 0.07, 0]}, + "t": 42.4, + "s": [22.228, 81.077, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.145, 0.971, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.242, -0.12, 0]}, + "t": 43.2, + "s": [1.727, -9.051, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.874, 0.919, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.053, -0.044, 0]}, + "t": 44, + "s": [-9.032, 27.824, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.791, -3.35, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.245, -3.044, 0]}, + "t": 44.8, + "s": [20.502, 3.731, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.021, 0.93, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.139, 0.085, 0]}, + "t": 45.6, + "s": [35.73, 4.373, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.017, -0.444, 0]}, + "t": 46.4, + "s": [58.616, 37.243, 100] + }, + {"t": 47.2001953125, "s": [30.021, 32.047, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "o": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "v": [ + [0.012, 10.621], + [-5.695, 5.34], + [-2.557, -7.377], + [3.15, -2.096] + ], + "c": true + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [0.313725501299, 0.890196084976, 0.760784327984, 1], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-3.421, 4.043], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Rectangle 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 4, + "op": 48, + "st": 4, + "bm": 0 + }, + { + "ddd": 0, + "ind": 42, + "ty": 4, + "nm": "Shape Layer 10", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 6.4, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 10.4, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 28, + "s": [100] + }, + {"t": 40.7998046875, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 0, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 6.4, + "s": [272.114, 255.071, 0], + "to": [-0.266, 0.053, 0], + "ti": [1.216, -0.382, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 7.2, + "s": [270.517, 255.387, 0], + "to": [-1.216, 0.382, 0], + "ti": [2.644, -1.017, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8, + "s": [264.819, 257.361, 0], + "to": [-2.644, 1.017, 0], + "ti": [3.502, -1.605, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [254.654, 261.49, 0], + "to": [-3.502, 1.605, 0], + "ti": [3.128, -2.062, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [243.809, 266.989, 0], + "to": [-3.128, 2.062, 0], + "ti": [0.929, -2.4, 0] + }, + { + "i": {"x": 0.833, "y": 0.987}, + "o": {"x": 0.167, "y": 0.016}, + "t": 10.4, + "s": [235.889, 273.86, 0], + "to": [-0.929, 2.4, 0], + "ti": [-1.493, -1.834, 0] + }, + { + "i": {"x": 0.833, "y": 0.881}, + "o": {"x": 0.167, "y": 0.133}, + "t": 11.2, + "s": [238.235, 281.389, 0], + "to": [1.493, 1.834, 0], + "ti": [-2.114, -0.944, 0] + }, + { + "i": {"x": 0.833, "y": 0.862}, + "o": {"x": 0.167, "y": 0.16}, + "t": 12, + "s": [244.846, 284.864, 0], + "to": [2.114, 0.944, 0], + "ti": [-1.909, -0.642, 0] + }, + { + "i": {"x": 0.833, "y": 0.857}, + "o": {"x": 0.167, "y": 0.163}, + "t": 12.8, + "s": [250.917, 287.051, 0], + "to": [1.909, 0.642, 0], + "ti": [-1.697, -0.51, 0] + }, + { + "i": {"x": 0.833, "y": 0.854}, + "o": {"x": 0.167, "y": 0.163}, + "t": 13.6, + "s": [256.301, 288.717, 0], + "to": [1.697, 0.51, 0], + "ti": [-1.516, -0.438, 0] + }, + { + "i": {"x": 0.833, "y": 0.854}, + "o": {"x": 0.167, "y": 0.162}, + "t": 14.4, + "s": [261.1, 290.112, 0], + "to": [1.516, 0.438, 0], + "ti": [-1.362, -0.392, 0] + }, + { + "i": {"x": 0.833, "y": 0.853}, + "o": {"x": 0.167, "y": 0.162}, + "t": 15.2, + "s": [265.397, 291.343, 0], + "to": [1.362, 0.392, 0], + "ti": [-1.229, -0.362, 0] + }, + { + "i": {"x": 0.833, "y": 0.854}, + "o": {"x": 0.167, "y": 0.161}, + "t": 16, + "s": [269.269, 292.467, 0], + "to": [1.229, 0.362, 0], + "ti": [-1.114, -0.341, 0] + }, + { + "i": {"x": 0.833, "y": 0.855}, + "o": {"x": 0.167, "y": 0.159}, + "t": 16.8, + "s": [272.774, 293.517, 0], + "to": [1.114, 0.341, 0], + "ti": [-1.012, -0.326, 0] + }, + { + "i": {"x": 0.833, "y": 0.856}, + "o": {"x": 0.167, "y": 0.158}, + "t": 17.6, + "s": [275.955, 294.515, 0], + "to": [1.012, 0.326, 0], + "ti": [-0.921, -0.314, 0] + }, + { + "i": {"x": 0.833, "y": 0.858}, + "o": {"x": 0.167, "y": 0.155}, + "t": 18.4, + "s": [278.847, 295.472, 0], + "to": [0.921, 0.314, 0], + "ti": [-0.839, -0.305, 0] + }, + { + "i": {"x": 0.833, "y": 0.86}, + "o": {"x": 0.167, "y": 0.152}, + "t": 19.2, + "s": [281.482, 296.4, 0], + "to": [0.839, 0.305, 0], + "ti": [-0.762, -0.298, 0] + }, + { + "i": {"x": 0.833, "y": 0.863}, + "o": {"x": 0.167, "y": 0.149}, + "t": 20, + "s": [283.879, 297.304, 0], + "to": [0.762, 0.298, 0], + "ti": [-0.69, -0.293, 0] + }, + { + "i": {"x": 0.833, "y": 0.867}, + "o": {"x": 0.167, "y": 0.145}, + "t": 20.8, + "s": [286.053, 298.19, 0], + "to": [0.69, 0.293, 0], + "ti": [-0.621, -0.288, 0] + }, + { + "i": {"x": 0.833, "y": 0.871}, + "o": {"x": 0.167, "y": 0.141}, + "t": 21.6, + "s": [288.016, 299.06, 0], + "to": [0.621, 0.288, 0], + "ti": [-0.554, -0.284, 0] + }, + { + "i": {"x": 0.833, "y": 0.878}, + "o": {"x": 0.167, "y": 0.135}, + "t": 22.4, + "s": [289.778, 299.918, 0], + "to": [0.554, 0.284, 0], + "ti": [-0.486, -0.279, 0] + }, + { + "i": {"x": 0.833, "y": 0.886}, + "o": {"x": 0.167, "y": 0.128}, + "t": 23.2, + "s": [291.338, 300.763, 0], + "to": [0.486, 0.279, 0], + "ti": [-0.419, -0.273, 0] + }, + { + "i": {"x": 0.833, "y": 0.895}, + "o": {"x": 0.167, "y": 0.119}, + "t": 24, + "s": [292.695, 301.592, 0], + "to": [0.419, 0.273, 0], + "ti": [-0.351, -0.266, 0] + }, + { + "i": {"x": 0.833, "y": 0.908}, + "o": {"x": 0.167, "y": 0.106}, + "t": 24.8, + "s": [293.849, 302.402, 0], + "to": [0.351, 0.266, 0], + "ti": [-0.283, -0.258, 0] + }, + { + "i": {"x": 0.833, "y": 0.925}, + "o": {"x": 0.167, "y": 0.088}, + "t": 25.6, + "s": [294.801, 303.189, 0], + "to": [0.283, 0.258, 0], + "ti": [-0.215, -0.245, 0] + }, + { + "i": {"x": 0.833, "y": 0.945}, + "o": {"x": 0.167, "y": 0.067}, + "t": 26.4, + "s": [295.549, 303.949, 0], + "to": [0.215, 0.245, 0], + "ti": [-0.147, -0.225, 0] + }, + { + "i": {"x": 0.833, "y": 0.967}, + "o": {"x": 0.167, "y": 0.041}, + "t": 27.2, + "s": [296.09, 304.662, 0], + "to": [0.147, 0.225, 0], + "ti": [-0.082, -0.198, 0] + }, + { + "i": {"x": 0.833, "y": 0.989}, + "o": {"x": 0.167, "y": 0.014}, + "t": 28, + "s": [296.429, 305.301, 0], + "to": [0.082, 0.198, 0], + "ti": [-0.024, -0.164, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28.8, + "s": [296.583, 305.847, 0], + "to": [0.024, 0.164, 0], + "ti": [0.026, -0.131, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 29.6, + "s": [296.574, 306.285, 0], + "to": [-0.026, 0.131, 0], + "ti": [0.067, -0.108, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 30.4, + "s": [296.425, 306.636, 0], + "to": [-0.067, 0.108, 0], + "ti": [0.097, -0.091, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 31.2, + "s": [296.17, 306.934, 0], + "to": [-0.097, 0.091, 0], + "ti": [0.117, -0.076, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32, + "s": [295.842, 307.183, 0], + "to": [-0.117, 0.076, 0], + "ti": [0.129, -0.065, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [295.468, 307.393, 0], + "to": [-0.129, 0.065, 0], + "ti": [0.134, -0.057, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [295.071, 307.574, 0], + "to": [-0.134, 0.057, 0], + "ti": [0.133, -0.051, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [294.667, 307.733, 0], + "to": [-0.133, 0.051, 0], + "ti": [0.128, -0.046, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 35.2, + "s": [294.272, 307.878, 0], + "to": [-0.128, 0.046, 0], + "ti": [0.12, -0.044, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36, + "s": [293.898, 308.012, 0], + "to": [-0.12, 0.044, 0], + "ti": [0.108, -0.042, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36.8, + "s": [293.554, 308.14, 0], + "to": [-0.108, 0.042, 0], + "ti": [0.094, -0.041, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 37.6, + "s": [293.249, 308.264, 0], + "to": [-0.094, 0.041, 0], + "ti": [0.08, -0.044, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 38.4, + "s": [292.988, 308.385, 0], + "to": [-0.08, 0.044, 0], + "ti": [0.068, -0.055, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 39.2, + "s": [292.767, 308.528, 0], + "to": [-0.068, 0.055, 0], + "ti": [0.056, -0.069, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40, + "s": [292.579, 308.714, 0], + "to": [-0.056, 0.069, 0], + "ti": [0.044, -0.082, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40.8, + "s": [292.428, 308.941, 0], + "to": [-0.044, 0.082, 0], + "ti": [0.03, -0.094, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 41.6, + "s": [292.318, 309.205, 0], + "to": [-0.03, 0.094, 0], + "ti": [0.016, -0.105, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 42.4, + "s": [292.249, 309.504, 0], + "to": [-0.016, 0.105, 0], + "ti": [0.001, -0.114, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 43.2, + "s": [292.223, 309.833, 0], + "to": [-0.001, 0.114, 0], + "ti": [-0.013, -0.122, 0] + }, + { + "i": {"x": 0.833, "y": 0.995}, + "o": {"x": 0.167, "y": 0.004}, + "t": 44, + "s": [292.242, 310.189, 0], + "to": [0.013, 0.122, 0], + "ti": [-0.028, -0.128, 0] + }, + { + "i": {"x": 0.833, "y": 0.989}, + "o": {"x": 0.167, "y": 0.011}, + "t": 44.8, + "s": [292.304, 310.564, 0], + "to": [0.028, 0.128, 0], + "ti": [-0.042, -0.131, 0] + }, + { + "i": {"x": 0.833, "y": 0.98}, + "o": {"x": 0.167, "y": 0.019}, + "t": 45.6, + "s": [292.408, 310.955, 0], + "to": [0.042, 0.131, 0], + "ti": [-0.055, -0.133, 0] + }, + { + "i": {"x": 0.833, "y": 0.971}, + "o": {"x": 0.167, "y": 0.029}, + "t": 46.4, + "s": [292.554, 311.353, 0], + "to": [0.055, 0.133, 0], + "ti": [-0.031, -0.067, 0] + }, + {"t": 47.2001953125, "s": [292.738, 311.753, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.866, 0.988, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 6.4, + "s": [127.438, 90.591, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.119, 0.935, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.22, -0.014, 0]}, + "t": 7.2, + "s": [90.096, 28.016, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.948, 1.126, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.049, -0.3, 0]}, + "t": 8, + "s": [67.312, 81.384, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.746, 0.942, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.141, 0.05, 0]}, + "t": 8.8, + "s": [122.538, 69.77, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.94, 1.165, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.124, -0.191, 0]}, + "t": 9.6, + "s": [102.02, 98.906, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.968, 1.084, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.21, 0.055, 0]}, + "t": 10.4, + "s": [60.035, 90.043, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.429, 0.887, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.051, 0.042, 0]}, + "t": 11.2, + "s": [71.968, 116.451, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.886, 0.984, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.07, 0.318, 0]}, + "t": 12, + "s": [64.586, 63.443, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.12, 0.842, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.307, -0.02, 0]}, + "t": 12.8, + "s": [109.991, 44.631, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.887, 0.933, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.049, 0.176, 0]}, + "t": 13.6, + "s": [126.937, 59.824, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.971, 1.735, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.316, -0.347, 0]}, + "t": 14.4, + "s": [85.604, 73.442, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.831, 0.945, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.045, 0.075, 0]}, + "t": 15.2, + "s": [70.771, 70.802, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.913, 0.639, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.164, -0.162, 0]}, + "t": 16, + "s": [80.389, 96.73, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.179, 0.905, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.79, 0.108, 0]}, + "t": 16.8, + "s": [90.289, 87.923, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.59, 1.199, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.093, 0.674, 0]}, + "t": 17.6, + "s": [90.772, 58.569, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.878, 1.108, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.073, 0.059, 0]}, + "t": 18.4, + "s": [95.049, 54.421, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.33, 0.947, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.262, 0.047, 0]}, + "t": 19.2, + "s": [60.54, 68.48, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.901, 0.927, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.067, -0.148, 0]}, + "t": 20, + "s": [44.437, 36.222, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.929, 4.164, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.525, -0.607, 0]}, + "t": 20.8, + "s": [124.279, 47.844, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-1.354, 0.913, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.486, 0.081, 0]}, + "t": 21.6, + "s": [139.353, 46.441, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.883, 2.129, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.086, 1.924, 0]}, + "t": 22.4, + "s": [137.147, 101.148, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.867, 0.914, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.29, 0.078, 0]}, + "t": 23.2, + "s": [77.097, 103.625, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.16, 2.38, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.222, 2.471, 0]}, + "t": 24, + "s": [52.92, 67.602, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.876, 0.839, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.055, 0.079, 0]}, + "t": 24.8, + "s": [38.391, 66.346, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.058, 0.973, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.255, 0.173, 0]}, + "t": 25.6, + "s": [80.849, 88.417, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.897, 0.752, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.034, -0.04, 0]}, + "t": 26.4, + "s": [101.514, 109.026, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.242, 1.058, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.446, 0.126, 0]}, + "t": 27.2, + "s": [66.389, 95.048, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.892, 1.025, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.062, 0.034, 0]}, + "t": 28, + "s": [58.31, 67.448, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.044, 0.974, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.364, 0.019, 0]}, + "t": 28.8, + "s": [89.867, 114.12, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.587, 0.887, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.029, -0.038, 0]}, + "t": 29.6, + "s": [99.232, 53.341, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.912, 1.104, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.104, 0.319, 0]}, + "t": 30.4, + "s": [84.926, 94.953, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.439, 0.867, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.495, 0.046, 0]}, + "t": 31.2, + "s": [28.265, 109.679, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.035, 0.952, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.07, 0.223, 0]}, + "t": 32, + "s": [24.92, 76.564, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.948, 1.618, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.025, -0.113, 0]}, + "t": 32.8, + "s": [45.873, 56.751, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.603, 0.985, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.138, 0.073, 0]}, + "t": 33.6, + "s": [16.102, 65.143, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.028, 0.911, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.105, -0.019, 0]}, + "t": 34.4, + "s": [27.313, -5.503, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.923, 1.561, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.021, 1.347, 0]}, + "t": 35.2, + "s": [69.528, 52.086, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.395, 0.972, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.056, 0.073, 0]}, + "t": 36, + "s": [13.347, 55.885, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.991, 0.96, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.069, -0.041, 0]}, + "t": 36.8, + "s": [17.457, 26.517, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.906, 0.989, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.01, -0.077, 0]}, + "t": 37.6, + "s": [-6.114, 46.16, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.079, 1.13, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.74, -0.013, 0]}, + "t": 38.4, + "s": [14.941, 35.961, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.225, 0.927, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.041, 0.051, 0]}, + "t": 39.2, + "s": [17.614, 44.753, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.151, -0.369, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.061, -0.61, 0]}, + "t": 40, + "s": [12.402, 22.217, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.952, 0.988, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.054, 0.089, 0]}, + "t": 40.8, + "s": [31.658, 24.926, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.879, 0.864, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.115, -0.014, 0]}, + "t": 41.6, + "s": [-22.38, 66.727, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.835, 0.983, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.269, 0.215, 0]}, + "t": 42.4, + "s": [0.27, 30.796, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.829, 1.068, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.168, -0.021, 0]}, + "t": 43.2, + "s": [10.423, 7.981, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.817, 0.983, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.162, 0.038, 0]}, + "t": 44, + "s": [20.367, 26.148, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.012, 0.9, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.153, -0.021, 0]}, + "t": 44.8, + "s": [30.864, -6.905, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.986, 1.056, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.011, 0.499, 0]}, + "t": 45.6, + "s": [43.453, 19.525, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.017, 0.034, 0]}, + "t": 46.4, + "s": [29.038, 24.824, 100] + }, + {"t": 47.2001953125, "s": [41.021, 15.933, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "o": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "v": [ + [0.012, 10.621], + [-5.695, 5.34], + [-2.557, -7.377], + [3.15, -2.096] + ], + "c": true + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [1, 0.89411765337, 0.113725490868, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-3.421, 4.043], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Rectangle 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 6.400390625, + "op": 48, + "st": 6.400390625, + "bm": 0 + }, + { + "ddd": 0, + "ind": 43, + "ty": 4, + "nm": "Shape Layer 9", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 8, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 12, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 29.6, + "s": [100] + }, + {"t": 42.400390625, "s": [0]} + ], + "ix": 11 + }, + "r": { + "a": 0, + "k": 0, + "ix": 10, + "x": "var $bm_rt;\nvar $bm_rt;\nvar $bm_rt;\n$bm_rt = $bm_rt = $bm_rt = mul(time, 300);" + }, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8, + "s": [279.864, 255.271, 0], + "to": [-0.343, 0.177, 0], + "ti": [1.691, -0.679, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [277.804, 256.336, 0], + "to": [-1.691, 0.679, 0], + "ti": [3.887, -1.09, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [269.719, 259.347, 0], + "to": [-3.887, 1.09, 0], + "ti": [3.906, 1.153, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 10.4, + "s": [254.482, 262.875, 0], + "to": [-3.906, -1.153, 0], + "ti": [0.302, 3.979, 0] + }, + { + "i": {"x": 0.833, "y": 0.973}, + "o": {"x": 0.167, "y": 0.029}, + "t": 11.2, + "s": [246.284, 252.432, 0], + "to": [-0.302, -3.979, 0], + "ti": [-2.124, 4.016, 0] + }, + { + "i": {"x": 0.833, "y": 0.96}, + "o": {"x": 0.167, "y": 0.048}, + "t": 12, + "s": [252.67, 238.999, 0], + "to": [2.124, -4.016, 0], + "ti": [-1.967, 3.264, 0] + }, + { + "i": {"x": 0.833, "y": 0.958}, + "o": {"x": 0.167, "y": 0.049}, + "t": 12.8, + "s": [259.026, 228.335, 0], + "to": [1.967, -3.264, 0], + "ti": [-1.669, 2.774, 0] + }, + { + "i": {"x": 0.833, "y": 0.96}, + "o": {"x": 0.167, "y": 0.047}, + "t": 13.6, + "s": [264.471, 219.412, 0], + "to": [1.669, -2.774, 0], + "ti": [-1.398, 2.426, 0] + }, + { + "i": {"x": 0.833, "y": 0.962}, + "o": {"x": 0.167, "y": 0.042}, + "t": 14.4, + "s": [269.041, 211.694, 0], + "to": [1.398, -2.426, 0], + "ti": [-1.168, 2.169, 0] + }, + { + "i": {"x": 0.833, "y": 0.967}, + "o": {"x": 0.167, "y": 0.037}, + "t": 15.2, + "s": [272.862, 204.857, 0], + "to": [1.168, -2.169, 0], + "ti": [-0.974, 1.973, 0] + }, + { + "i": {"x": 0.833, "y": 0.972}, + "o": {"x": 0.167, "y": 0.032}, + "t": 16, + "s": [276.051, 198.681, 0], + "to": [0.974, -1.973, 0], + "ti": [-0.806, 1.82, 0] + }, + { + "i": {"x": 0.833, "y": 0.977}, + "o": {"x": 0.167, "y": 0.026}, + "t": 16.8, + "s": [278.705, 193.017, 0], + "to": [0.806, -1.82, 0], + "ti": [-0.644, 1.685, 0] + }, + { + "i": {"x": 0.833, "y": 0.983}, + "o": {"x": 0.167, "y": 0.019}, + "t": 17.6, + "s": [280.888, 187.764, 0], + "to": [0.644, -1.685, 0], + "ti": [-0.482, 1.558, 0] + }, + { + "i": {"x": 0.833, "y": 0.989}, + "o": {"x": 0.167, "y": 0.012}, + "t": 18.4, + "s": [282.57, 182.907, 0], + "to": [0.482, -1.558, 0], + "ti": [-0.333, 1.443, 0] + }, + { + "i": {"x": 0.833, "y": 0.994}, + "o": {"x": 0.167, "y": 0.006}, + "t": 19.2, + "s": [283.781, 178.414, 0], + "to": [0.333, -1.443, 0], + "ti": [-0.197, 1.336, 0] + }, + { + "i": {"x": 0.833, "y": 0.998}, + "o": {"x": 0.167, "y": 0.002}, + "t": 20, + "s": [284.566, 174.251, 0], + "to": [0.197, -1.336, 0], + "ti": [-0.074, 1.237, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [284.965, 170.396, 0], + "to": [0.074, -1.237, 0], + "ti": [0.038, 1.14, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 21.6, + "s": [285.012, 166.831, 0], + "to": [-0.038, -1.14, 0], + "ti": [0.139, 1.044, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 22.4, + "s": [284.739, 163.555, 0], + "to": [-0.139, -1.044, 0], + "ti": [0.228, 0.947, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 23.2, + "s": [284.178, 160.569, 0], + "to": [-0.228, -0.947, 0], + "ti": [0.304, 0.848, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24, + "s": [283.368, 157.874, 0], + "to": [-0.304, -0.848, 0], + "ti": [0.363, 0.748, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24.8, + "s": [282.355, 155.48, 0], + "to": [-0.363, -0.748, 0], + "ti": [0.405, 0.649, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 25.6, + "s": [281.189, 153.386, 0], + "to": [-0.405, -0.649, 0], + "ti": [0.428, 0.554, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26.4, + "s": [279.927, 151.584, 0], + "to": [-0.428, -0.554, 0], + "ti": [0.433, 0.464, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 27.2, + "s": [278.623, 150.062, 0], + "to": [-0.433, -0.464, 0], + "ti": [0.424, 0.383, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28, + "s": [277.326, 148.798, 0], + "to": [-0.424, -0.383, 0], + "ti": [0.403, 0.31, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28.8, + "s": [276.078, 147.765, 0], + "to": [-0.403, -0.31, 0], + "ti": [0.372, 0.245, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 29.6, + "s": [274.911, 146.939, 0], + "to": [-0.372, -0.245, 0], + "ti": [0.335, 0.19, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 30.4, + "s": [273.847, 146.293, 0], + "to": [-0.335, -0.19, 0], + "ti": [0.294, 0.141, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 31.2, + "s": [272.9, 145.802, 0], + "to": [-0.294, -0.141, 0], + "ti": [0.25, 0.1, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32, + "s": [272.082, 145.445, 0], + "to": [-0.25, -0.1, 0], + "ti": [0.205, 0.064, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [271.398, 145.204, 0], + "to": [-0.205, -0.064, 0], + "ti": [0.16, 0.034, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [270.85, 145.06, 0], + "to": [-0.16, -0.034, 0], + "ti": [0.115, 0.009, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [270.438, 144.999, 0], + "to": [-0.115, -0.009, 0], + "ti": [0.071, -0.011, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 35.2, + "s": [270.159, 145.005, 0], + "to": [-0.071, 0.011, 0], + "ti": [0.029, -0.027, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36, + "s": [270.01, 145.067, 0], + "to": [-0.029, 0.027, 0], + "ti": [-0.01, -0.039, 0] + }, + { + "i": {"x": 0.833, "y": 0.936}, + "o": {"x": 0.167, "y": 0.043}, + "t": 36.8, + "s": [269.983, 145.17, 0], + "to": [0.01, 0.039, 0], + "ti": [-0.046, -0.046, 0] + }, + { + "i": {"x": 0.833, "y": 0.877}, + "o": {"x": 0.167, "y": 0.086}, + "t": 37.6, + "s": [270.07, 145.3, 0], + "to": [0.046, 0.046, 0], + "ti": [-0.08, -0.05, 0] + }, + { + "i": {"x": 0.833, "y": 0.855}, + "o": {"x": 0.167, "y": 0.113}, + "t": 38.4, + "s": [270.262, 145.447, 0], + "to": [0.08, 0.05, 0], + "ti": [-0.111, -0.049, 0] + }, + { + "i": {"x": 0.833, "y": 0.85}, + "o": {"x": 0.167, "y": 0.131}, + "t": 39.2, + "s": [270.551, 145.599, 0], + "to": [0.111, 0.049, 0], + "ti": [-0.133, -0.043, 0] + }, + { + "i": {"x": 0.833, "y": 0.845}, + "o": {"x": 0.167, "y": 0.151}, + "t": 40, + "s": [270.927, 145.744, 0], + "to": [0.133, 0.043, 0], + "ti": [-0.141, -0.026, 0] + }, + { + "i": {"x": 0.833, "y": 0.835}, + "o": {"x": 0.167, "y": 0.166}, + "t": 40.8, + "s": [271.347, 145.854, 0], + "to": [0.141, 0.026, 0], + "ti": [-0.142, -0.004, 0] + }, + { + "i": {"x": 0.833, "y": 0.832}, + "o": {"x": 0.167, "y": 0.165}, + "t": 41.6, + "s": [271.77, 145.903, 0], + "to": [0.142, 0.004, 0], + "ti": [-0.143, 0.021, 0] + }, + { + "i": {"x": 0.833, "y": 0.84}, + "o": {"x": 0.167, "y": 0.157}, + "t": 42.4, + "s": [272.2, 145.876, 0], + "to": [0.143, -0.021, 0], + "ti": [-0.142, 0.042, 0] + }, + { + "i": {"x": 0.833, "y": 0.853}, + "o": {"x": 0.167, "y": 0.144}, + "t": 43.2, + "s": [272.629, 145.78, 0], + "to": [0.142, -0.042, 0], + "ti": [-0.137, 0.061, 0] + }, + { + "i": {"x": 0.833, "y": 0.869}, + "o": {"x": 0.167, "y": 0.13}, + "t": 44, + "s": [273.049, 145.622, 0], + "to": [0.137, -0.061, 0], + "ti": [-0.13, 0.077, 0] + }, + { + "i": {"x": 0.833, "y": 0.887}, + "o": {"x": 0.167, "y": 0.113}, + "t": 44.8, + "s": [273.452, 145.412, 0], + "to": [0.13, -0.077, 0], + "ti": [-0.12, 0.091, 0] + }, + { + "i": {"x": 0.833, "y": 0.904}, + "o": {"x": 0.167, "y": 0.098}, + "t": 45.6, + "s": [273.829, 145.157, 0], + "to": [0.12, -0.091, 0], + "ti": [-0.109, 0.102, 0] + }, + { + "i": {"x": 0.833, "y": 0.92}, + "o": {"x": 0.167, "y": 0.08}, + "t": 46.4, + "s": [274.175, 144.866, 0], + "to": [0.109, -0.102, 0], + "ti": [-0.051, 0.054, 0] + }, + {"t": 47.2001953125, "s": [274.483, 144.545, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.838, 1.875, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 8, + "s": [109.864, 70.089, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.856, 0.69, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.172, 0.076, 0]}, + "t": 8.8, + "s": [86.733, 68.252, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.028, 0.993, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.199, 0.114, 0]}, + "t": 9.6, + "s": [64.924, 89.385, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.797, 0.9, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.021, -0.008, 0]}, + "t": 10.4, + "s": [49.171, 146.99, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.92, 0.755, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.141, 0.509, 0]}, + "t": 11.2, + "s": [70.147, 94.506, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.944, 1.08, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.941, 0.126, 0]}, + "t": 12, + "s": [100.345, 84.223, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.003, 0.981, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.08, 0.041, 0]}, + "t": 12.8, + "s": [99.102, 64.322, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.843, 0.917, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.002, -0.024, 0]}, + "t": 13.6, + "s": [129.334, 103.257, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.977, -0.948, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.177, -21.251, 0]}, + "t": 14.4, + "s": [98.181, 73.031, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.969, 0.966, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.032, 0.087, 0]}, + "t": 15.2, + "s": [70.521, 73.149, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.819, 0.396, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.048, -0.057, 0]}, + "t": 16, + "s": [90.481, 75.792, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.879, 0.99, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.155, 0.097, 0]}, + "t": 16.8, + "s": [77.84, 74.224, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.071, 0.857, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.269, -0.012, 0]}, + "t": 17.6, + "s": [63.067, 64.426, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.698, 0.968, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.038, 0.2, 0]}, + "t": 18.4, + "s": [56.422, 72.999, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.807, 0.455, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.115, -0.052, 0]}, + "t": 19.2, + "s": [68.741, 79.126, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.911, 0.955, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.147, 0.098, 0]}, + "t": 20, + "s": [101.082, 75.355, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.698, 0.664, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.265, -0.1, 0]}, + "t": 20.8, + "s": [143.609, 54.475, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.73, 1.014, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.074, 0.111, 0]}, + "t": 21.6, + "s": [146.608, 63.972, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.888, 1.027, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.121, 0.012, 0]}, + "t": 22.4, + "s": [118.472, 92.79, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.05, 0.968, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.324, 0.02, 0]}, + "t": 23.2, + "s": [55.394, 59.194, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.866, 0.94, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.031, -0.051, 0]}, + "t": 24, + "s": [33.53, 103.661, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.028, 0.632, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.22, -0.21, 0]}, + "t": 24.8, + "s": [68.551, 76.112, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.9, 1.084, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.021, 0.108, 0]}, + "t": 25.6, + "s": [89.966, 83.951, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.007, 1.005, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.497, 0.042, 0]}, + "t": 26.4, + "s": [61.396, 110.752, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.966, 0.971, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.077, 0.004, 0]}, + "t": 27.2, + "s": [55.64, 56.936, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.958, 0.958, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.058, -0.045, 0]}, + "t": 28, + "s": [130.926, 113.733, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.106, 0.944, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.086, -0.085, 0]}, + "t": 28.8, + "s": [86.439, 76.969, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.866, 0.598, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.047, -0.169, 0]}, + "t": 29.6, + "s": [108.294, 95.156, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.04, 0.836, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.221, 0.105, 0]}, + "t": 30.4, + "s": [58.545, 89.141, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.947, 0.959, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.027, 0.17, 0]}, + "t": 31.2, + "s": [28.376, 66.139, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.89, 1.228, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.148, -0.079, 0]}, + "t": 32, + "s": [72.983, 43.989, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.128, 1.021, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.339, 0.061, 0]}, + "t": 32.8, + "s": [56.935, 55.362, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.199, 0.907, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.05, 0.017, 0]}, + "t": 33.6, + "s": [51.706, 12.909, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.938, 1.369, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.059, 0.774, 0]}, + "t": 34.4, + "s": [64.946, 65.932, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.252, 1.001, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.238, 0.068, 0]}, + "t": 35.2, + "s": [20.13, 72.328, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.97, 0.949, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.063, 0.001, 0]}, + "t": 36, + "s": [31.738, 37.588, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.893, 1.019, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.046, -0.129, 0]}, + "t": 36.8, + "s": [-14.966, 72.869, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.07, 1.207, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.373, 0.016, 0]}, + "t": 37.6, + "s": [15.041, 59.042, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.075, 0.894, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.038, 0.059, 0]}, + "t": 38.4, + "s": [23.68, 76.032, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.071, 0.973, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.039, 0.396, 0]}, + "t": 39.2, + "s": [7.79, 16.858, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.941, 0.564, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.038, -0.041, 0]}, + "t": 40, + "s": [37.924, 1.088, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.813, 0.957, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.205, 0.103, 0]}, + "t": 40.8, + "s": [-17.733, 11.662, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.814, 1.008, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.15, -0.09, 0]}, + "t": 41.6, + "s": [-1.626, 56.352, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.897, 1.062, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.151, 0.008, 0]}, + "t": 42.4, + "s": [18.416, 34.888, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.817, 0.918, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.441, 0.035, 0]}, + "t": 43.2, + "s": [43.027, 58.529, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.877, 3.278, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.153, -7.348, 0]}, + "t": 44, + "s": [48.754, 17.354, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.206, 0.776, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.259, 0.08, 0]}, + "t": 44.8, + "s": [55.61, 17.816, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.986, 1.061, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.059, 0.133, 0]}, + "t": 45.6, + "s": [58.864, 4.732, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.017, 0.035, 0]}, + "t": 46.4, + "s": [47.582, -17.422, 100] + }, + {"t": 47.2001953125, "s": [56.939, 20.914, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "o": [ + [0, 0], + [0, 0], + [0, 0], + [0, 0] + ], + "v": [ + [0.012, 10.621], + [-5.695, 5.34], + [-2.557, -7.377], + [3.15, -2.096] + ], + "c": true + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [1, 0.89411765337, 0.113725490868, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-3.421, 4.043], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Rectangle 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 8, + "op": 48, + "st": 8, + "bm": 0 + }, + { + "ddd": 0, + "ind": 44, + "ty": 4, + "nm": "Shape Layer 8", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 7.2, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 11.2, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 28.8, + "s": [100] + }, + {"t": 41.599609375, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 7.2, + "s": [278.864, 255.82, 0], + "to": [-0.509, 0.141, 0], + "ti": [2.192, -0.891, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8, + "s": [275.812, 256.665, 0], + "to": [-2.192, 0.891, 0], + "ti": [4.157, -2.88, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [265.713, 261.168, 0], + "to": [-4.157, 2.88, 0], + "ti": [3.28, -5.54, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [250.868, 273.944, 0], + "to": [-3.28, 5.54, 0], + "ti": [-0.211, -6.285, 0] + }, + { + "i": {"x": 0.833, "y": 0.983}, + "o": {"x": 0.167, "y": 0.02}, + "t": 10.4, + "s": [246.03, 294.41, 0], + "to": [0.211, 6.285, 0], + "ti": [-2.493, -4.913, 0] + }, + { + "i": {"x": 0.833, "y": 0.947}, + "o": {"x": 0.167, "y": 0.063}, + "t": 11.2, + "s": [252.134, 311.655, 0], + "to": [2.493, 4.913, 0], + "ti": [-2.968, -3.51, 0] + }, + { + "i": {"x": 0.833, "y": 0.922}, + "o": {"x": 0.167, "y": 0.093}, + "t": 12, + "s": [260.991, 323.886, 0], + "to": [2.968, 3.51, 0], + "ti": [-2.895, -2.554, 0] + }, + { + "i": {"x": 0.833, "y": 0.903}, + "o": {"x": 0.167, "y": 0.114}, + "t": 12.8, + "s": [269.941, 332.712, 0], + "to": [2.895, 2.554, 0], + "ti": [-2.702, -1.885, 0] + }, + { + "i": {"x": 0.833, "y": 0.887}, + "o": {"x": 0.167, "y": 0.13}, + "t": 13.6, + "s": [278.362, 339.211, 0], + "to": [2.702, 1.885, 0], + "ti": [-2.495, -1.387, 0] + }, + { + "i": {"x": 0.833, "y": 0.873}, + "o": {"x": 0.167, "y": 0.145}, + "t": 14.4, + "s": [286.152, 344.024, 0], + "to": [2.495, 1.387, 0], + "ti": [-2.299, -0.994, 0] + }, + { + "i": {"x": 0.833, "y": 0.861}, + "o": {"x": 0.167, "y": 0.156}, + "t": 15.2, + "s": [293.332, 347.535, 0], + "to": [2.299, 0.994, 0], + "ti": [-2.119, -0.668, 0] + }, + { + "i": {"x": 0.833, "y": 0.852}, + "o": {"x": 0.167, "y": 0.166}, + "t": 16, + "s": [299.949, 349.988, 0], + "to": [2.119, 0.668, 0], + "ti": [-1.954, -0.387, 0] + }, + { + "i": {"x": 0.833, "y": 0.845}, + "o": {"x": 0.167, "y": 0.172}, + "t": 16.8, + "s": [306.048, 351.543, 0], + "to": [1.954, 0.387, 0], + "ti": [-1.795, -0.137, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.175}, + "t": 17.6, + "s": [311.672, 352.309, 0], + "to": [1.795, 0.137, 0], + "ti": [-1.633, 0.088, 0] + }, + { + "i": {"x": 0.833, "y": 0.842}, + "o": {"x": 0.167, "y": 0.172}, + "t": 18.4, + "s": [316.816, 352.363, 0], + "to": [1.633, -0.088, 0], + "ti": [-1.471, 0.288, 0] + }, + { + "i": {"x": 0.833, "y": 0.852}, + "o": {"x": 0.167, "y": 0.162}, + "t": 19.2, + "s": [321.472, 351.78, 0], + "to": [1.471, -0.288, 0], + "ti": [-1.306, 0.458, 0] + }, + { + "i": {"x": 0.833, "y": 0.866}, + "o": {"x": 0.167, "y": 0.145}, + "t": 20, + "s": [325.642, 350.637, 0], + "to": [1.306, -0.458, 0], + "ti": [-1.135, 0.591, 0] + }, + { + "i": {"x": 0.833, "y": 0.884}, + "o": {"x": 0.167, "y": 0.126}, + "t": 20.8, + "s": [329.308, 349.031, 0], + "to": [1.135, -0.591, 0], + "ti": [-0.968, 0.681, 0] + }, + { + "i": {"x": 0.833, "y": 0.903}, + "o": {"x": 0.167, "y": 0.105}, + "t": 21.6, + "s": [332.455, 347.089, 0], + "to": [0.968, -0.681, 0], + "ti": [-0.817, 0.731, 0] + }, + { + "i": {"x": 0.833, "y": 0.92}, + "o": {"x": 0.167, "y": 0.086}, + "t": 22.4, + "s": [335.117, 344.942, 0], + "to": [0.817, -0.731, 0], + "ti": [-0.687, 0.746, 0] + }, + { + "i": {"x": 0.833, "y": 0.934}, + "o": {"x": 0.167, "y": 0.071}, + "t": 23.2, + "s": [337.355, 342.705, 0], + "to": [0.687, -0.746, 0], + "ti": [-0.581, 0.735, 0] + }, + { + "i": {"x": 0.833, "y": 0.944}, + "o": {"x": 0.167, "y": 0.061}, + "t": 24, + "s": [339.24, 340.468, 0], + "to": [0.581, -0.735, 0], + "ti": [-0.497, 0.706, 0] + }, + { + "i": {"x": 0.833, "y": 0.95}, + "o": {"x": 0.167, "y": 0.054}, + "t": 24.8, + "s": [340.842, 338.297, 0], + "to": [0.497, -0.706, 0], + "ti": [-0.432, 0.666, 0] + }, + { + "i": {"x": 0.833, "y": 0.955}, + "o": {"x": 0.167, "y": 0.049}, + "t": 25.6, + "s": [342.224, 336.234, 0], + "to": [0.432, -0.666, 0], + "ti": [-0.383, 0.622, 0] + }, + { + "i": {"x": 0.833, "y": 0.957}, + "o": {"x": 0.167, "y": 0.046}, + "t": 26.4, + "s": [343.437, 334.299, 0], + "to": [0.383, -0.622, 0], + "ti": [-0.345, 0.576, 0] + }, + { + "i": {"x": 0.833, "y": 0.958}, + "o": {"x": 0.167, "y": 0.045}, + "t": 27.2, + "s": [344.521, 332.502, 0], + "to": [0.345, -0.576, 0], + "ti": [-0.315, 0.529, 0] + }, + { + "i": {"x": 0.833, "y": 0.958}, + "o": {"x": 0.167, "y": 0.046}, + "t": 28, + "s": [345.505, 330.845, 0], + "to": [0.315, -0.529, 0], + "ti": [-0.292, 0.487, 0] + }, + { + "i": {"x": 0.833, "y": 0.957}, + "o": {"x": 0.167, "y": 0.046}, + "t": 28.8, + "s": [346.41, 329.327, 0], + "to": [0.292, -0.487, 0], + "ti": [-0.279, 0.457, 0] + }, + { + "i": {"x": 0.833, "y": 0.955}, + "o": {"x": 0.167, "y": 0.047}, + "t": 29.6, + "s": [347.258, 327.924, 0], + "to": [0.279, -0.457, 0], + "ti": [-0.273, 0.434, 0] + }, + { + "i": {"x": 0.833, "y": 0.953}, + "o": {"x": 0.167, "y": 0.049}, + "t": 30.4, + "s": [348.086, 326.587, 0], + "to": [0.273, -0.434, 0], + "ti": [-0.265, 0.411, 0] + }, + { + "i": {"x": 0.833, "y": 0.952}, + "o": {"x": 0.167, "y": 0.051}, + "t": 31.2, + "s": [348.894, 325.317, 0], + "to": [0.265, -0.411, 0], + "ti": [-0.255, 0.387, 0] + }, + { + "i": {"x": 0.833, "y": 0.951}, + "o": {"x": 0.167, "y": 0.053}, + "t": 32, + "s": [349.675, 324.119, 0], + "to": [0.255, -0.387, 0], + "ti": [-0.243, 0.361, 0] + }, + { + "i": {"x": 0.833, "y": 0.949}, + "o": {"x": 0.167, "y": 0.054}, + "t": 32.8, + "s": [350.425, 322.996, 0], + "to": [0.243, -0.361, 0], + "ti": [-0.229, 0.334, 0] + }, + { + "i": {"x": 0.833, "y": 0.949}, + "o": {"x": 0.167, "y": 0.056}, + "t": 33.6, + "s": [351.135, 321.951, 0], + "to": [0.229, -0.334, 0], + "ti": [-0.212, 0.306, 0] + }, + { + "i": {"x": 0.833, "y": 0.948}, + "o": {"x": 0.167, "y": 0.057}, + "t": 34.4, + "s": [351.799, 320.989, 0], + "to": [0.212, -0.306, 0], + "ti": [-0.194, 0.278, 0] + }, + { + "i": {"x": 0.833, "y": 0.949}, + "o": {"x": 0.167, "y": 0.058}, + "t": 35.2, + "s": [352.409, 320.113, 0], + "to": [0.194, -0.278, 0], + "ti": [-0.173, 0.249, 0] + }, + { + "i": {"x": 0.833, "y": 0.95}, + "o": {"x": 0.167, "y": 0.058}, + "t": 36, + "s": [352.961, 319.322, 0], + "to": [0.173, -0.249, 0], + "ti": [-0.15, 0.219, 0] + }, + { + "i": {"x": 0.833, "y": 0.952}, + "o": {"x": 0.167, "y": 0.057}, + "t": 36.8, + "s": [353.448, 318.619, 0], + "to": [0.15, -0.219, 0], + "ti": [-0.126, 0.188, 0] + }, + { + "i": {"x": 0.833, "y": 0.955}, + "o": {"x": 0.167, "y": 0.056}, + "t": 37.6, + "s": [353.864, 318.007, 0], + "to": [0.126, -0.188, 0], + "ti": [-0.101, 0.156, 0] + }, + { + "i": {"x": 0.833, "y": 0.958}, + "o": {"x": 0.167, "y": 0.052}, + "t": 38.4, + "s": [354.205, 317.489, 0], + "to": [0.101, -0.156, 0], + "ti": [-0.075, 0.131, 0] + }, + { + "i": {"x": 0.833, "y": 0.967}, + "o": {"x": 0.167, "y": 0.038}, + "t": 39.2, + "s": [354.467, 317.068, 0], + "to": [0.075, -0.131, 0], + "ti": [-0.049, 0.118, 0] + }, + { + "i": {"x": 0.833, "y": 0.985}, + "o": {"x": 0.167, "y": 0.016}, + "t": 40, + "s": [354.652, 316.704, 0], + "to": [0.049, -0.118, 0], + "ti": [-0.024, 0.112, 0] + }, + { + "i": {"x": 0.833, "y": 0.998}, + "o": {"x": 0.167, "y": 0.002}, + "t": 40.8, + "s": [354.762, 316.358, 0], + "to": [0.024, -0.112, 0], + "ti": [0.001, 0.104, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 41.6, + "s": [354.797, 316.033, 0], + "to": [-0.001, -0.104, 0], + "ti": [0.025, 0.094, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 42.4, + "s": [354.758, 315.735, 0], + "to": [-0.025, -0.094, 0], + "ti": [0.049, 0.084, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 43.2, + "s": [354.646, 315.467, 0], + "to": [-0.049, -0.084, 0], + "ti": [0.071, 0.072, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44, + "s": [354.465, 315.232, 0], + "to": [-0.071, -0.072, 0], + "ti": [0.091, 0.06, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44.8, + "s": [354.22, 315.034, 0], + "to": [-0.091, -0.06, 0], + "ti": [0.109, 0.047, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 45.6, + "s": [353.918, 314.873, 0], + "to": [-0.109, -0.047, 0], + "ti": [0.124, 0.033, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 46.4, + "s": [353.565, 314.754, 0], + "to": [-0.124, -0.033, 0], + "ti": [0.066, 0.013, 0] + }, + {"t": 47.2001953125, "s": [353.172, 314.677, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.872, 1.101, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 7.2, + "s": [121.274, 69.223, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.683, 1.187, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.239, 0.046, 0]}, + "t": 8, + "s": [102.389, 75.161, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.98, 0.955, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.113, 0.058, 0]}, + "t": 8.8, + "s": [92.262, 61.994, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.931, 1.014, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.026, -0.097, 0]}, + "t": 9.6, + "s": [63.863, 104.769, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.274, 0.951, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.401, 0.012, 0]}, + "t": 10.4, + "s": [85.432, 85.001, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.092, 1.206, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.094, -0.118, 0]}, + "t": 11.2, + "s": [81.722, 108.079, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.882, 0.993, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.044, 0.059, 0]}, + "t": 12, + "s": [53.108, 98.543, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.078, 0.868, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.286, -0.008, 0]}, + "t": 12.8, + "s": [113.303, 131.662, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.91, 0.819, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.04, 0.226, 0]}, + "t": 13.6, + "s": [138.039, 101.322, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.965, 1.01, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.209, 0.154, 0]}, + "t": 14.4, + "s": [90.083, 83.561, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.383, 0.796, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.061, 0.009, 0]}, + "t": 15.2, + "s": [86.533, 62.73, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.943, 1.025, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.079, 0.141, 0]}, + "t": 16, + "s": [88.578, 85.983, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.633, 0.981, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.181, 0.019, 0]}, + "t": 16.8, + "s": [52.598, 119.725, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.913, 0.912, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.108, -0.024, 0]}, + "t": 17.6, + "s": [63.951, 75.737, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.114, 2.104, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.9, 1.706, 0]}, + "t": 18.4, + "s": [102.646, 109.959, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.968, 0.914, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.09, 0.077, 0]}, + "t": 19.2, + "s": [104.421, 111.717, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.984, 1.195, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.051, 2.681, 0]}, + "t": 20, + "s": [126.369, 86.671, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.465, 2.183, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.02, 0.058, 0]}, + "t": 20.8, + "s": [112.748, 85.867, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.895, 1.029, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.071, 0.078, 0]}, + "t": 21.6, + "s": [123.717, 88.551, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.153, 0.911, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.407, 0.021, 0]}, + "t": 22.4, + "s": [51.588, 47.768, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.924, 2.015, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.054, 1.345, 0]}, + "t": 23.2, + "s": [33.003, 102.64, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.199, 1.013, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.892, 0.077, 0]}, + "t": 24, + "s": [85.701, 106.264, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.078, 0.966, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.059, 0.011, 0]}, + "t": 24.8, + "s": [81.198, 58.493, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.008, 0.991, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.04, -0.058, 0]}, + "t": 25.6, + "s": [96.43, 113.732, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.02, 0.927, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.007, -0.01, 0]}, + "t": 26.4, + "s": [67.01, 81.239, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.963, 0.771, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.016, -0.605, 0]}, + "t": 27.2, + "s": [99.306, 110.284, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.823, 0.301, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.067, 0.131, 0]}, + "t": 28, + "s": [59.341, 106.769, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.189, 0.922, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.158, 0.095, 0]}, + "t": 28.8, + "s": [81.457, 100.615, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.974, 1.274, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.058, -1.128, 0]}, + "t": 29.6, + "s": [106.222, 55.153, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.965, 0.719, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.038, 0.064, 0]}, + "t": 30.4, + "s": [25.147, 58.283, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.948, 0.958, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.061, 0.119, 0]}, + "t": 31.2, + "s": [80.819, 44.863, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.839, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.137, -0.083, 0]}, + "t": 32, + "s": [48.72, 13.108, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.058, 0.872, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.173, 0]}, + "t": 32.8, + "s": [60.869, 29.019, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.967, 1.357, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.034, 0.237, 0]}, + "t": 33.6, + "s": [73.011, 43.835, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.288, 1.012, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.054, 0.068, 0]}, + "t": 34.4, + "s": [52.393, 51.855, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.942, 0.906, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.065, 0.011, 0]}, + "t": 35.2, + "s": [64.871, 9.492, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.756, 0.775, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.193, 0.731, 0]}, + "t": 36, + "s": [9.336, 58.19, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.038, 1.229, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.127, 0.132, 0]}, + "t": 36.8, + "s": [26.111, 64.455, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.014, 0.878, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.026, 0.061, 0]}, + "t": 37.6, + "s": [58.4, 75.08, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.98, 0.77, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.012, 0.262, 0]}, + "t": 38.4, + "s": [11.51, 35.267, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.932, 1.06, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.026, 0.131, 0]}, + "t": 39.2, + "s": [66.25, 16.716, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.825, 0.866, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.377, 0.035, 0]}, + "t": 40, + "s": [24.642, -15.996, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.942, 0.933, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.159, 0.221, 0]}, + "t": 40.8, + "s": [32.168, 40.121, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.214, 0.376, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.193, -0.341, 0]}, + "t": 41.6, + "s": [40.464, 74.155, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.906, 0.958, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.06, 0.096, 0]}, + "t": 42.4, + "s": [37.96, 67.475, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.566, 1.064, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.711, -0.084, 0]}, + "t": 43.2, + "s": [46.883, 24.242, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.073, 0.829, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.088, 0.036, 0]}, + "t": 44, + "s": [48.067, 45.748, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.938, 1.019, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.039, 0.163, 0]}, + "t": 44.8, + "s": [69.141, 7.771, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.021, 0.887, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.247, 0.016, 0]}, + "t": 45.6, + "s": [29.508, -32.064, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.017, 0.316, 0]}, + "t": 46.4, + "s": [39.499, 17.057, 100] + }, + {"t": 47.2001953125, "s": [27.006, 34.616, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": {"a": 0, "k": [10, 10], "ix": 2}, + "p": {"a": 0, "k": [0, 0], "ix": 3}, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [1, 0.101960785687, 0.380392163992, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Ellipse 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 7.2001953125, + "op": 48, + "st": 7.2001953125, + "bm": 0 + }, + { + "ddd": 0, + "ind": 45, + "ty": 4, + "nm": "Shape Layer 7", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 4, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 8, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 25.6, + "s": [100] + }, + {"t": 38.400390625, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 4, + "s": [269.945, 256.942, 0], + "to": [-0.448, -0.21, 0], + "ti": [1.991, 0.807, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 4.8, + "s": [267.255, 255.684, 0], + "to": [-1.991, -0.807, 0], + "ti": [4.389, 1.346, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 5.6, + "s": [257.999, 252.103, 0], + "to": [-4.389, -1.346, 0], + "ti": [6.039, 1.363, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 6.4, + "s": [240.923, 247.608, 0], + "to": [-6.039, -1.363, 0], + "ti": [5.978, 1.14, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 7.2, + "s": [221.767, 243.923, 0], + "to": [-5.978, -1.14, 0], + "ti": [5.09, 1.054, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8, + "s": [205.053, 240.767, 0], + "to": [-5.09, -1.054, 0], + "ti": [4.207, 1.095, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [191.227, 237.6, 0], + "to": [-4.207, -1.095, 0], + "ti": [3.481, 1.188, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [179.812, 234.195, 0], + "to": [-3.481, -1.188, 0], + "ti": [2.886, 1.294, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 10.4, + "s": [170.338, 230.471, 0], + "to": [-2.886, -1.294, 0], + "ti": [2.378, 1.39, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 11.2, + "s": [162.496, 226.433, 0], + "to": [-2.378, -1.39, 0], + "ti": [1.933, 1.462, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12, + "s": [156.068, 222.132, 0], + "to": [-1.933, -1.462, 0], + "ti": [1.54, 1.499, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12.8, + "s": [150.896, 217.662, 0], + "to": [-1.54, -1.499, 0], + "ti": [1.198, 1.498, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 13.6, + "s": [146.827, 213.136, 0], + "to": [-1.198, -1.498, 0], + "ti": [0.906, 1.46, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 14.4, + "s": [143.71, 208.674, 0], + "to": [-0.906, -1.46, 0], + "ti": [0.665, 1.393, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 15.2, + "s": [141.391, 204.376, 0], + "to": [-0.665, -1.393, 0], + "ti": [0.471, 1.306, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16, + "s": [139.72, 200.316, 0], + "to": [-0.471, -1.306, 0], + "ti": [0.313, 1.216, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16.8, + "s": [138.565, 196.541, 0], + "to": [-0.313, -1.216, 0], + "ti": [0.184, 1.137, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 17.6, + "s": [137.84, 193.02, 0], + "to": [-0.184, -1.137, 0], + "ti": [0.081, 1.063, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [137.463, 189.72, 0], + "to": [-0.081, -1.063, 0], + "ti": [0.003, 0.99, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [137.352, 186.641, 0], + "to": [-0.003, -0.99, 0], + "ti": [-0.055, 0.919, 0] + }, + { + "i": {"x": 0.833, "y": 0.999}, + "o": {"x": 0.167, "y": 0.001}, + "t": 20, + "s": [137.442, 183.779, 0], + "to": [0.055, -0.919, 0], + "ti": [-0.097, 0.849, 0] + }, + { + "i": {"x": 0.833, "y": 0.997}, + "o": {"x": 0.167, "y": 0.003}, + "t": 20.8, + "s": [137.68, 181.129, 0], + "to": [0.097, -0.849, 0], + "ti": [-0.126, 0.781, 0] + }, + { + "i": {"x": 0.833, "y": 0.995}, + "o": {"x": 0.167, "y": 0.006}, + "t": 21.6, + "s": [138.024, 178.686, 0], + "to": [0.126, -0.781, 0], + "ti": [-0.145, 0.716, 0] + }, + { + "i": {"x": 0.833, "y": 0.992}, + "o": {"x": 0.167, "y": 0.008}, + "t": 22.4, + "s": [138.439, 176.442, 0], + "to": [0.145, -0.716, 0], + "ti": [-0.156, 0.653, 0] + }, + { + "i": {"x": 0.833, "y": 0.99}, + "o": {"x": 0.167, "y": 0.011}, + "t": 23.2, + "s": [138.897, 174.391, 0], + "to": [0.156, -0.653, 0], + "ti": [-0.159, 0.592, 0] + }, + { + "i": {"x": 0.833, "y": 0.988}, + "o": {"x": 0.167, "y": 0.013}, + "t": 24, + "s": [139.374, 172.526, 0], + "to": [0.159, -0.592, 0], + "ti": [-0.157, 0.533, 0] + }, + { + "i": {"x": 0.833, "y": 0.987}, + "o": {"x": 0.167, "y": 0.015}, + "t": 24.8, + "s": [139.853, 170.839, 0], + "to": [0.157, -0.533, 0], + "ti": [-0.15, 0.477, 0] + }, + { + "i": {"x": 0.833, "y": 0.985}, + "o": {"x": 0.167, "y": 0.017}, + "t": 25.6, + "s": [140.317, 169.325, 0], + "to": [0.15, -0.477, 0], + "ti": [-0.139, 0.422, 0] + }, + { + "i": {"x": 0.833, "y": 0.984}, + "o": {"x": 0.167, "y": 0.018}, + "t": 26.4, + "s": [140.753, 167.978, 0], + "to": [0.139, -0.422, 0], + "ti": [-0.125, 0.37, 0] + }, + { + "i": {"x": 0.833, "y": 0.984}, + "o": {"x": 0.167, "y": 0.019}, + "t": 27.2, + "s": [141.152, 166.791, 0], + "to": [0.125, -0.37, 0], + "ti": [-0.109, 0.319, 0] + }, + { + "i": {"x": 0.833, "y": 0.984}, + "o": {"x": 0.167, "y": 0.019}, + "t": 28, + "s": [141.505, 165.76, 0], + "to": [0.109, -0.319, 0], + "ti": [-0.091, 0.27, 0] + }, + { + "i": {"x": 0.833, "y": 0.985}, + "o": {"x": 0.167, "y": 0.018}, + "t": 28.8, + "s": [141.806, 164.879, 0], + "to": [0.091, -0.27, 0], + "ti": [-0.072, 0.222, 0] + }, + { + "i": {"x": 0.833, "y": 0.987}, + "o": {"x": 0.167, "y": 0.017}, + "t": 29.6, + "s": [142.051, 164.142, 0], + "to": [0.072, -0.222, 0], + "ti": [-0.052, 0.176, 0] + }, + { + "i": {"x": 0.833, "y": 0.99}, + "o": {"x": 0.167, "y": 0.013}, + "t": 30.4, + "s": [142.237, 163.545, 0], + "to": [0.052, -0.176, 0], + "ti": [-0.032, 0.132, 0] + }, + { + "i": {"x": 0.833, "y": 0.995}, + "o": {"x": 0.167, "y": 0.008}, + "t": 31.2, + "s": [142.363, 163.084, 0], + "to": [0.032, -0.132, 0], + "ti": [-0.012, 0.09, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32, + "s": [142.428, 162.753, 0], + "to": [0.012, -0.09, 0], + "ti": [0.007, 0.05, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [142.433, 162.544, 0], + "to": [-0.007, -0.05, 0], + "ti": [0.026, 0.012, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [142.383, 162.452, 0], + "to": [-0.026, -0.012, 0], + "ti": [0.042, -0.024, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [142.28, 162.472, 0], + "to": [-0.042, 0.024, 0], + "ti": [0.057, -0.059, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 35.2, + "s": [142.128, 162.599, 0], + "to": [-0.057, 0.059, 0], + "ti": [0.07, -0.085, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36, + "s": [141.935, 162.827, 0], + "to": [-0.07, 0.085, 0], + "ti": [0.078, -0.097, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36.8, + "s": [141.71, 163.111, 0], + "to": [-0.078, 0.097, 0], + "ti": [0.083, -0.101, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 37.6, + "s": [141.466, 163.41, 0], + "to": [-0.083, 0.101, 0], + "ti": [0.085, -0.104, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 38.4, + "s": [141.211, 163.718, 0], + "to": [-0.085, 0.104, 0], + "ti": [0.084, -0.104, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 39.2, + "s": [140.955, 164.031, 0], + "to": [-0.084, 0.104, 0], + "ti": [0.078, -0.103, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40, + "s": [140.709, 164.343, 0], + "to": [-0.078, 0.103, 0], + "ti": [0.08, -0.102, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40.8, + "s": [140.484, 164.649, 0], + "to": [-0.08, 0.102, 0], + "ti": [0.095, -0.103, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 41.6, + "s": [140.231, 164.956, 0], + "to": [-0.095, 0.103, 0], + "ti": [0.112, -0.102, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 42.4, + "s": [139.917, 165.266, 0], + "to": [-0.112, 0.102, 0], + "ti": [0.125, -0.098, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 43.2, + "s": [139.556, 165.569, 0], + "to": [-0.125, 0.098, 0], + "ti": [0.134, -0.092, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44, + "s": [139.164, 165.856, 0], + "to": [-0.134, 0.092, 0], + "ti": [0.138, -0.083, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44.8, + "s": [138.753, 166.12, 0], + "to": [-0.138, 0.083, 0], + "ti": [0.139, -0.072, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 45.6, + "s": [138.335, 166.353, 0], + "to": [-0.139, 0.072, 0], + "ti": [0.135, -0.059, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 46.4, + "s": [137.921, 166.55, 0], + "to": [-0.135, 0.059, 0], + "ti": [0.067, -0.026, 0] + }, + {"t": 47.2001953125, "s": [137.522, 166.706, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.747, 0.81, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 4, + "s": [67.084, 129.75, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.927, 0.854, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.075, 0.148, 0]}, + "t": 4.8, + "s": [62.33, 109.198, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.16, 1.108, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.594, 0.195, 0]}, + "t": 5.6, + "s": [109.714, 82.895, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.95, 1.011, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.055, 0.047, 0]}, + "t": 6.4, + "s": [103.874, 63.18, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.652, 0.949, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.126, 0.009, 0]}, + "t": 7.2, + "s": [120.913, 108.471, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.996, 0.969, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.11, -0.133, 0]}, + "t": 8, + "s": [114.137, 57.365, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.991, 1.188, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.004, -0.05, 0]}, + "t": 8.8, + "s": [92.637, 77.058, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.717, 0.892, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.01, 0.058, 0]}, + "t": 9.6, + "s": [113.058, 64.766, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.956, 0.862, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.118, 0.369, 0]}, + "t": 10.4, + "s": [94.823, 104.736, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.686, 1.222, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.095, 0.21, 0]}, + "t": 11.2, + "s": [51.043, 116.383, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.935, 0.877, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.113, 0.061, 0]}, + "t": 12, + "s": [71.52, 124.057, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.826, 0.869, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.292, 0.259, 0]}, + "t": 12.8, + "s": [128.168, 95.925, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.867, 1.124, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.16, 0.23, 0]}, + "t": 13.6, + "s": [115.579, 82.608, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.512, 0.751, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.223, 0.05, 0]}, + "t": 14.4, + "s": [101.896, 75.048, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.973, 1.014, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.1, 0.125, 0]}, + "t": 15.2, + "s": [93.758, 93.897, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.898, 0.923, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.041, 0.012, 0]}, + "t": 16, + "s": [54.25, 131.368, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.724, 0.144, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.465, -1.005, 0]}, + "t": 16.8, + "s": [80.758, 87.771, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.924, 1.014, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.119, 0.092, 0]}, + "t": 17.6, + "s": [86.54, 91.108, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.904, 0.995, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.912, 0.012, 0]}, + "t": 18.4, + "s": [99.918, 122.044, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [11.638, 0.966, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.63, -0.006, 0]}, + "t": 19.2, + "s": [98.798, 85.895, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.179, 0.764, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.083, -0.058, 0]}, + "t": 20, + "s": [98.627, 119.725, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.897, 1, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.057, 0.129, 0]}, + "t": 20.8, + "s": [120.625, 99.715, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.129, 0.846, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.428, 0, 0]}, + "t": 21.6, + "s": [51.46, 62.943, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.842, 1.057, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.051, 0.182, 0]}, + "t": 22.4, + "s": [34.76, 99.837, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.887, 0.971, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.176, 0.034, 0]}, + "t": 23.2, + "s": [77.215, 131.147, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.072, 1, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.319, -0.044, 0]}, + "t": 24, + "s": [115.216, 78.51, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.783, 0.915, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.039, 0, 0]}, + "t": 24.8, + "s": [128.632, 112.897, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.926, 4.715, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.135, 4.176, 0]}, + "t": 25.6, + "s": [103.693, 78.444, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.008, 0.987, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.662, 0.082, 0]}, + "t": 26.4, + "s": [63.665, 77.742, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.628, 0.82, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.007, -0.016, 0]}, + "t": 27.2, + "s": [68.138, 109.713, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.039, 0.849, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.074, 0.155, 0]}, + "t": 28, + "s": [63.26, 82.764, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.925, 1.07, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.027, 0.186, 0]}, + "t": 28.8, + "s": [104.89, 51.456, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.219, 1.029, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.728, 0.038, 0]}, + "t": 29.6, + "s": [43.633, 26.02, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.892, 0.966, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.06, 0.022, 0]}, + "t": 30.4, + "s": [49.933, 72.695, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.243, 0.988, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.367, -0.056, 0]}, + "t": 31.2, + "s": [27.075, 9.722, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.832, 0.92, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.062, -0.015, 0]}, + "t": 32, + "s": [20.365, 47.293, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.936, 3.512, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.165, -2.021, 0]}, + "t": 32.8, + "s": [46.638, 15.298, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.361, 0.978, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.284, 0.081, 0]}, + "t": 33.6, + "s": [73.418, 16.565, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.887, 0.789, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.096, -0.029, 0]}, + "t": 34.4, + "s": [67.341, -22.905, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.174, 0.978, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.315, 0.138, 0]}, + "t": 35.2, + "s": [26.919, 6.334, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.937, 0.904, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.056, -0.031, 0]}, + "t": 36, + "s": [12.404, 51.222, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.142, 1.239, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.264, 0.63, 0]}, + "t": 36.8, + "s": [57.152, 18.419, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.933, 1.11, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.052, 0.062, 0]}, + "t": 37.6, + "s": [46.41, 13.418, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.849, 0.964, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.344, 0.047, 0]}, + "t": 38.4, + "s": [75.422, 32.787, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.055, 0.769, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.185, -0.063, 0]}, + "t": 39.2, + "s": [69.769, -12.086, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.398, 0.912, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.033, 0.13, 0]}, + "t": 40, + "s": [65.147, 13.473, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.884, 2.464, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.069, 1.481, 0]}, + "t": 40.8, + "s": [72.836, 58.774, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.911, 0.943, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.296, 0.079, 0]}, + "t": 41.6, + "s": [28.388, 61.475, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [3.368, 0.846, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.317, -0.176, 0]}, + "t": 42.4, + "s": [10.975, 11.341, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.072, 1.254, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.081, 0.182, 0]}, + "t": 43.2, + "s": [9.799, 27.481, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.975, 0.968, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.039, 0.063, 0]}, + "t": 44, + "s": [44.403, 41.158, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.912, 0.931, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.036, -0.052, 0]}, + "t": 44.8, + "s": [-20.175, -14.141, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.192, 1.424, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.505, -0.402, 0]}, + "t": 45.6, + "s": [25.048, 19.928, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.093, 0.07, 0]}, + "t": 46.4, + "s": [27.7, 14.076, 100] + }, + {"t": 47.2001953125, "s": [50.717, 49.703, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": {"a": 0, "k": [10, 10], "ix": 2}, + "p": {"a": 0, "k": [0, 0], "ix": 3}, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [1, 0.101960785687, 0.380392163992, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Ellipse 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 4, + "op": 48, + "st": 4, + "bm": 0 + }, + { + "ddd": 0, + "ind": 46, + "ty": 4, + "nm": "Shape Layer 6", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 9.6, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 13.6, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 31.2, + "s": [100] + }, + {"t": 44, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 0.807}, + "o": {"x": 0.167, "y": 0.081}, + "t": 9.6, + "s": [269.021, 253.165, 0], + "to": [0.334, -0.343, 0], + "ti": [-1.472, 1.743, 0] + }, + { + "i": {"x": 0.833, "y": 0.907}, + "o": {"x": 0.167, "y": 0.042}, + "t": 10.4, + "s": [271.027, 251.106, 0], + "to": [1.472, -1.743, 0], + "ti": [-3.01, 4.091, 0] + }, + { + "i": {"x": 0.833, "y": 0.942}, + "o": {"x": 0.167, "y": 0.042}, + "t": 11.2, + "s": [277.851, 242.705, 0], + "to": [3.01, -4.091, 0], + "ti": [-3.712, 5.823, 0] + }, + { + "i": {"x": 0.833, "y": 0.96}, + "o": {"x": 0.167, "y": 0.04}, + "t": 12, + "s": [289.088, 226.561, 0], + "to": [3.712, -5.823, 0], + "ti": [-3.262, 5.954, 0] + }, + { + "i": {"x": 0.833, "y": 0.969}, + "o": {"x": 0.167, "y": 0.036}, + "t": 12.8, + "s": [300.123, 207.765, 0], + "to": [3.262, -5.954, 0], + "ti": [-2.491, 5.217, 0] + }, + { + "i": {"x": 0.833, "y": 0.975}, + "o": {"x": 0.167, "y": 0.031}, + "t": 13.6, + "s": [308.66, 190.839, 0], + "to": [2.491, -5.217, 0], + "ti": [-1.89, 4.434, 0] + }, + { + "i": {"x": 0.833, "y": 0.978}, + "o": {"x": 0.167, "y": 0.025}, + "t": 14.4, + "s": [315.071, 176.461, 0], + "to": [1.89, -4.434, 0], + "ti": [-1.471, 3.789, 0] + }, + { + "i": {"x": 0.833, "y": 0.981}, + "o": {"x": 0.167, "y": 0.022}, + "t": 15.2, + "s": [320.001, 164.236, 0], + "to": [1.471, -3.789, 0], + "ti": [-1.175, 3.273, 0] + }, + { + "i": {"x": 0.833, "y": 0.983}, + "o": {"x": 0.167, "y": 0.019}, + "t": 16, + "s": [323.898, 153.727, 0], + "to": [1.175, -3.273, 0], + "ti": [-0.958, 2.857, 0] + }, + { + "i": {"x": 0.833, "y": 0.985}, + "o": {"x": 0.167, "y": 0.017}, + "t": 16.8, + "s": [327.049, 144.595, 0], + "to": [0.958, -2.857, 0], + "ti": [-0.794, 2.513, 0] + }, + { + "i": {"x": 0.833, "y": 0.987}, + "o": {"x": 0.167, "y": 0.015}, + "t": 17.6, + "s": [329.644, 136.588, 0], + "to": [0.794, -2.513, 0], + "ti": [-0.666, 2.226, 0] + }, + { + "i": {"x": 0.833, "y": 0.988}, + "o": {"x": 0.167, "y": 0.014}, + "t": 18.4, + "s": [331.811, 129.516, 0], + "to": [0.666, -2.226, 0], + "ti": [-0.563, 1.981, 0] + }, + { + "i": {"x": 0.833, "y": 0.989}, + "o": {"x": 0.167, "y": 0.013}, + "t": 19.2, + "s": [333.638, 123.235, 0], + "to": [0.563, -1.981, 0], + "ti": [-0.48, 1.769, 0] + }, + { + "i": {"x": 0.833, "y": 0.99}, + "o": {"x": 0.167, "y": 0.012}, + "t": 20, + "s": [335.19, 117.632, 0], + "to": [0.48, -1.769, 0], + "ti": [-0.41, 1.586, 0] + }, + { + "i": {"x": 0.833, "y": 0.99}, + "o": {"x": 0.167, "y": 0.011}, + "t": 20.8, + "s": [336.516, 112.618, 0], + "to": [0.41, -1.586, 0], + "ti": [-0.351, 1.424, 0] + }, + { + "i": {"x": 0.833, "y": 0.991}, + "o": {"x": 0.167, "y": 0.01}, + "t": 21.6, + "s": [337.65, 108.119, 0], + "to": [0.351, -1.424, 0], + "ti": [-0.3, 1.282, 0] + }, + { + "i": {"x": 0.833, "y": 0.992}, + "o": {"x": 0.167, "y": 0.009}, + "t": 22.4, + "s": [338.62, 104.073, 0], + "to": [0.3, -1.282, 0], + "ti": [-0.255, 1.156, 0] + }, + { + "i": {"x": 0.833, "y": 0.993}, + "o": {"x": 0.167, "y": 0.008}, + "t": 23.2, + "s": [339.448, 100.428, 0], + "to": [0.255, -1.156, 0], + "ti": [-0.216, 1.044, 0] + }, + { + "i": {"x": 0.833, "y": 0.994}, + "o": {"x": 0.167, "y": 0.007}, + "t": 24, + "s": [340.152, 97.139, 0], + "to": [0.216, -1.044, 0], + "ti": [-0.181, 0.944, 0] + }, + { + "i": {"x": 0.833, "y": 0.995}, + "o": {"x": 0.167, "y": 0.006}, + "t": 24.8, + "s": [340.744, 94.166, 0], + "to": [0.181, -0.944, 0], + "ti": [-0.149, 0.856, 0] + }, + { + "i": {"x": 0.833, "y": 0.996}, + "o": {"x": 0.167, "y": 0.005}, + "t": 25.6, + "s": [341.237, 91.474, 0], + "to": [0.149, -0.856, 0], + "ti": [-0.12, 0.778, 0] + }, + { + "i": {"x": 0.833, "y": 0.997}, + "o": {"x": 0.167, "y": 0.004}, + "t": 26.4, + "s": [341.639, 89.031, 0], + "to": [0.12, -0.778, 0], + "ti": [-0.094, 0.709, 0] + }, + { + "i": {"x": 0.833, "y": 0.998}, + "o": {"x": 0.167, "y": 0.003}, + "t": 27.2, + "s": [341.96, 86.808, 0], + "to": [0.094, -0.709, 0], + "ti": [-0.069, 0.648, 0] + }, + { + "i": {"x": 0.833, "y": 0.999}, + "o": {"x": 0.167, "y": 0.001}, + "t": 28, + "s": [342.205, 84.778, 0], + "to": [0.069, -0.648, 0], + "ti": [-0.038, 0.59, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28.8, + "s": [342.374, 82.918, 0], + "to": [0.038, -0.59, 0], + "ti": [-0.003, 0.532, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 29.6, + "s": [342.434, 81.24, 0], + "to": [0.003, -0.532, 0], + "ti": [0.027, 0.479, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 30.4, + "s": [342.395, 79.728, 0], + "to": [-0.027, -0.479, 0], + "ti": [0.051, 0.433, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 31.2, + "s": [342.275, 78.364, 0], + "to": [-0.051, -0.433, 0], + "ti": [0.069, 0.392, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32, + "s": [342.091, 77.129, 0], + "to": [-0.069, -0.392, 0], + "ti": [0.082, 0.356, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [341.861, 76.01, 0], + "to": [-0.082, -0.356, 0], + "ti": [0.091, 0.324, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [341.597, 74.992, 0], + "to": [-0.091, -0.324, 0], + "ti": [0.096, 0.296, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [341.314, 74.063, 0], + "to": [-0.096, -0.296, 0], + "ti": [0.096, 0.272, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 35.2, + "s": [341.023, 73.213, 0], + "to": [-0.096, -0.272, 0], + "ti": [0.094, 0.25, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36, + "s": [340.736, 72.433, 0], + "to": [-0.094, -0.25, 0], + "ti": [0.088, 0.23, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36.8, + "s": [340.462, 71.716, 0], + "to": [-0.088, -0.23, 0], + "ti": [0.08, 0.212, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 37.6, + "s": [340.209, 71.055, 0], + "to": [-0.08, -0.212, 0], + "ti": [0.069, 0.195, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 38.4, + "s": [339.984, 70.445, 0], + "to": [-0.069, -0.195, 0], + "ti": [0.056, 0.18, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 39.2, + "s": [339.795, 69.882, 0], + "to": [-0.056, -0.18, 0], + "ti": [0.042, 0.165, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40, + "s": [339.646, 69.365, 0], + "to": [-0.042, -0.165, 0], + "ti": [0.027, 0.151, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40.8, + "s": [339.542, 68.892, 0], + "to": [-0.027, -0.151, 0], + "ti": [0.01, 0.143, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 41.6, + "s": [339.484, 68.461, 0], + "to": [-0.01, -0.143, 0], + "ti": [-0.008, 0.149, 0] + }, + { + "i": {"x": 0.833, "y": 0.998}, + "o": {"x": 0.167, "y": 0.002}, + "t": 42.4, + "s": [339.48, 68.033, 0], + "to": [0.008, -0.149, 0], + "ti": [-0.028, 0.16, 0] + }, + { + "i": {"x": 0.833, "y": 0.992}, + "o": {"x": 0.167, "y": 0.008}, + "t": 43.2, + "s": [339.535, 67.568, 0], + "to": [0.028, -0.16, 0], + "ti": [-0.047, 0.169, 0] + }, + { + "i": {"x": 0.833, "y": 0.984}, + "o": {"x": 0.167, "y": 0.015}, + "t": 44, + "s": [339.647, 67.072, 0], + "to": [0.047, -0.169, 0], + "ti": [-0.065, 0.176, 0] + }, + { + "i": {"x": 0.833, "y": 0.975}, + "o": {"x": 0.167, "y": 0.024}, + "t": 44.8, + "s": [339.816, 66.553, 0], + "to": [0.065, -0.176, 0], + "ti": [-0.083, 0.179, 0] + }, + { + "i": {"x": 0.833, "y": 0.966}, + "o": {"x": 0.167, "y": 0.033}, + "t": 45.6, + "s": [340.039, 66.018, 0], + "to": [0.083, -0.179, 0], + "ti": [-0.099, 0.18, 0] + }, + { + "i": {"x": 0.833, "y": 0.957}, + "o": {"x": 0.167, "y": 0.043}, + "t": 46.4, + "s": [340.312, 65.476, 0], + "to": [0.099, -0.18, 0], + "ti": [-0.053, 0.09, 0] + }, + {"t": 47.2001953125, "s": [340.633, 64.937, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.887, 0.858, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 9.6, + "s": [119.548, 103.77, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.117, 0.413, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.32, 0.202, 0]}, + "t": 10.4, + "s": [75.487, 97.516, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.839, 0.857, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.049, 0.097, 0]}, + "t": 11.2, + "s": [59.951, 93.123, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.919, 1.065, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.172, 0.2, 0]}, + "t": 12, + "s": [97.388, 66.554, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-2.743, 0.826, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-2.463, 0.037, 0]}, + "t": 12.8, + "s": [132.453, 47.628, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.896, 0.982, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.085, 0.16, 0]}, + "t": 13.6, + "s": [131.306, 81.38, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.123, 0.94, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.42, -0.023, 0]}, + "t": 14.4, + "s": [80.905, 117.92, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.005, 1.294, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.05, -0.217, 0]}, + "t": 15.2, + "s": [68.413, 89.26, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.919, 1, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.004, 0.065, 0]}, + "t": 16, + "s": [99.306, 97.223, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.384, 0.975, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-3.281, 0, 0]}, + "t": 16.8, + "s": [66.686, 61.177, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.766, 1.087, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.089, -0.035, 0]}, + "t": 17.6, + "s": [67.494, 97.2, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.858, 0.983, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.129, 0.043, 0]}, + "t": 18.4, + "s": [80.098, 71.917, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.241, 0.896, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.201, -0.022, 0]}, + "t": 19.2, + "s": [102.945, 123.537, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.932, 1.252, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.062, 0.427, 0]}, + "t": 20, + "s": [119.07, 82.641, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.957, 0.883, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.378, 0.063, 0]}, + "t": 20.8, + "s": [56.225, 72.735, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.765, 0.982, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.089, 0.289, 0]}, + "t": 21.6, + "s": [67.587, 112.547, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.911, 1.01, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.075, -0.022, 0]}, + "t": 22.4, + "s": [62.103, 128.666, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.018, 1.194, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.415, 0.009, 0]}, + "t": 23.2, + "s": [117.871, 115.971, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.145, 0.86, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.015, 0.058, 0]}, + "t": 24, + "s": [121.362, 130.232, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.007, 1.04, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.092, 0.206, 0]}, + "t": 24.8, + "s": [117.096, 82.77, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.944, 0.922, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.007, 0.027, 0]}, + "t": 25.6, + "s": [77.619, 50.423, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.856, 0.71, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.172, -1.15, 0]}, + "t": 26.4, + "s": [120.562, 98.344, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1, 0.484, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.199, 0.117, 0]}, + "t": 27.2, + "s": [106.534, 95.106, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.217, 1.063, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0, 0.099, 0]}, + "t": 28, + "s": [96.391, 87.062, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.943, 0.954, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.06, 0.036, 0]}, + "t": 28.8, + "s": [106.476, 45.285, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.104, 0.996, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.179, -0.103, 0]}, + "t": 29.6, + "s": [70.097, 118.413, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.008, 1.087, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.046, -0.004, 0]}, + "t": 30.4, + "s": [81.643, 85.768, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.912, 0.911, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.007, 0.043, 0]}, + "t": 31.2, + "s": [55.641, 116.896, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.011, 0.466, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.675, 1.402, 0]}, + "t": 32, + "s": [83.987, 53.173, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.17, 0.898, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.091, 0.099, 0]}, + "t": 32.8, + "s": [85.471, 49.147, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.916, 1.763, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.056, 0.465, 0]}, + "t": 33.6, + "s": [102.003, 27.383, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.131, 1.022, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [7.848, 0.075, 0]}, + "t": 34.4, + "s": [51.831, 22.635, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-1.033, 0.913, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.051, 0.017, 0]}, + "t": 35.2, + "s": [51.293, 70.822, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.9, 1.802, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.087, 1.766, 0]}, + "t": 36, + "s": [52.676, 10.032, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.828, 0.986, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.491, 0.075, 0]}, + "t": 36.8, + "s": [85.033, 7.021, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.048, 0.89, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.162, -0.017, 0]}, + "t": 37.6, + "s": [91.644, 38.996, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.854, 1.128, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.031, 0.341, 0]}, + "t": 38.4, + "s": [98.641, 12.455, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.425, 0.857, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.195, 0.05, 0]}, + "t": 39.2, + "s": [87.583, 3.883, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.84, 0.985, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.097, 0.199, 0]}, + "t": 40, + "s": [79.333, 25.603, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.932, 0.756, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.174, -0.018, 0]}, + "t": 40.8, + "s": [30.689, 41.218, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.38, 1.037, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.362, 0.127, 0]}, + "t": 41.6, + "s": [-14.018, 28.37, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.031, 0.934, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.096, 0.026, 0]}, + "t": 42.4, + "s": [-5.646, 3.642, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.941, 0.845, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.022, -0.306, 0]}, + "t": 43.2, + "s": [48.164, 39.412, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.726, 0.492, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.197, 0.18, 0]}, + "t": 44, + "s": [-25.525, 31.762, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.914, 1.052, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.12, 0.1, 0]}, + "t": 44.8, + "s": [-3.614, 25.17, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.388, 0.994, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [2.417, 0.032, 0]}, + "t": 45.6, + "s": [46.515, -8.426, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.079, -0.006, 0]}, + "t": 46.4, + "s": [48.307, 46.093, 100] + }, + {"t": 47.2001953125, "s": [16.689, -4.541, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": {"a": 0, "k": [10, 10], "ix": 2}, + "p": {"a": 0, "k": [0, 0], "ix": 3}, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [1, 0.101960785687, 0.380392163992, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Ellipse 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 9.599609375, + "op": 48, + "st": 9.599609375, + "bm": 0 + }, + { + "ddd": 0, + "ind": 47, + "ty": 4, + "nm": "Shape Layer 5", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 6.4, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 10.4, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 28, + "s": [100] + }, + {"t": 40.7998046875, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 6.4, + "s": [272.244, 257.087, 0], + "to": [-0.124, -0.32, 0], + "ti": [0.816, 1.673, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 7.2, + "s": [271.5, 255.164, 0], + "to": [-0.816, -1.673, 0], + "ti": [2.219, 3.742, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8, + "s": [267.351, 247.049, 0], + "to": [-2.219, -3.742, 0], + "ti": [3.396, 4.937, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [258.186, 232.713, 0], + "to": [-3.396, -4.937, 0], + "ti": [3.5, 4.76, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [246.972, 217.428, 0], + "to": [-3.5, -4.76, 0], + "ti": [2.913, 4.097, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 10.4, + "s": [237.183, 204.156, 0], + "to": [-2.913, -4.097, 0], + "ti": [2.265, 3.524, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 11.2, + "s": [229.496, 192.846, 0], + "to": [-2.265, -3.524, 0], + "ti": [1.734, 3.087, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12, + "s": [223.596, 183.013, 0], + "to": [-1.734, -3.087, 0], + "ti": [1.325, 2.741, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12.8, + "s": [219.089, 174.323, 0], + "to": [-1.325, -2.741, 0], + "ti": [1.014, 2.455, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 13.6, + "s": [215.647, 166.568, 0], + "to": [-1.014, -2.455, 0], + "ti": [0.78, 2.215, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 14.4, + "s": [213.008, 159.593, 0], + "to": [-0.78, -2.215, 0], + "ti": [0.606, 2.01, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 15.2, + "s": [210.967, 153.279, 0], + "to": [-0.606, -2.01, 0], + "ti": [0.48, 1.83, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16, + "s": [209.371, 147.533, 0], + "to": [-0.48, -1.83, 0], + "ti": [0.392, 1.66, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16.8, + "s": [208.089, 142.301, 0], + "to": [-0.392, -1.66, 0], + "ti": [0.329, 1.501, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 17.6, + "s": [207.021, 137.573, 0], + "to": [-0.329, -1.501, 0], + "ti": [0.281, 1.36, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [206.115, 133.293, 0], + "to": [-0.281, -1.36, 0], + "ti": [0.243, 1.235, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [205.336, 129.411, 0], + "to": [-0.243, -1.235, 0], + "ti": [0.212, 1.123, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20, + "s": [204.658, 125.885, 0], + "to": [-0.212, -1.123, 0], + "ti": [0.187, 1.022, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [204.062, 122.676, 0], + "to": [-0.187, -1.022, 0], + "ti": [0.165, 0.933, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 21.6, + "s": [203.537, 119.751, 0], + "to": [-0.165, -0.933, 0], + "ti": [0.145, 0.852, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 22.4, + "s": [203.075, 117.081, 0], + "to": [-0.145, -0.852, 0], + "ti": [0.126, 0.779, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 23.2, + "s": [202.67, 114.64, 0], + "to": [-0.126, -0.779, 0], + "ti": [0.108, 0.713, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24, + "s": [202.32, 112.406, 0], + "to": [-0.108, -0.713, 0], + "ti": [0.09, 0.654, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24.8, + "s": [202.024, 110.359, 0], + "to": [-0.09, -0.654, 0], + "ti": [0.072, 0.599, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 25.6, + "s": [201.781, 108.484, 0], + "to": [-0.072, -0.599, 0], + "ti": [0.054, 0.55, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26.4, + "s": [201.591, 106.763, 0], + "to": [-0.054, -0.55, 0], + "ti": [0.036, 0.505, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 27.2, + "s": [201.455, 105.183, 0], + "to": [-0.036, -0.505, 0], + "ti": [0.018, 0.464, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28, + "s": [201.374, 103.731, 0], + "to": [-0.018, -0.464, 0], + "ti": [-0.001, 0.427, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28.8, + "s": [201.348, 102.397, 0], + "to": [0.001, -0.427, 0], + "ti": [-0.019, 0.391, 0] + }, + { + "i": {"x": 0.833, "y": 0.999}, + "o": {"x": 0.167, "y": 0.001}, + "t": 29.6, + "s": [201.377, 101.171, 0], + "to": [0.019, -0.391, 0], + "ti": [-0.037, 0.358, 0] + }, + { + "i": {"x": 0.833, "y": 0.997}, + "o": {"x": 0.167, "y": 0.003}, + "t": 30.4, + "s": [201.462, 100.048, 0], + "to": [0.037, -0.358, 0], + "ti": [-0.055, 0.327, 0] + }, + { + "i": {"x": 0.833, "y": 0.994}, + "o": {"x": 0.167, "y": 0.007}, + "t": 31.2, + "s": [201.6, 99.021, 0], + "to": [0.055, -0.327, 0], + "ti": [-0.072, 0.298, 0] + }, + { + "i": {"x": 0.833, "y": 0.988}, + "o": {"x": 0.167, "y": 0.013}, + "t": 32, + "s": [201.792, 98.084, 0], + "to": [0.072, -0.298, 0], + "ti": [-0.089, 0.269, 0] + }, + { + "i": {"x": 0.833, "y": 0.98}, + "o": {"x": 0.167, "y": 0.022}, + "t": 32.8, + "s": [202.034, 97.235, 0], + "to": [0.089, -0.269, 0], + "ti": [-0.104, 0.241, 0] + }, + { + "i": {"x": 0.833, "y": 0.969}, + "o": {"x": 0.167, "y": 0.034}, + "t": 33.6, + "s": [202.325, 96.471, 0], + "to": [0.104, -0.241, 0], + "ti": [-0.118, 0.213, 0] + }, + { + "i": {"x": 0.833, "y": 0.955}, + "o": {"x": 0.167, "y": 0.049}, + "t": 34.4, + "s": [202.66, 95.791, 0], + "to": [0.118, -0.213, 0], + "ti": [-0.131, 0.186, 0] + }, + { + "i": {"x": 0.833, "y": 0.938}, + "o": {"x": 0.167, "y": 0.067}, + "t": 35.2, + "s": [203.035, 95.192, 0], + "to": [0.131, -0.186, 0], + "ti": [-0.142, 0.158, 0] + }, + { + "i": {"x": 0.833, "y": 0.918}, + "o": {"x": 0.167, "y": 0.088}, + "t": 36, + "s": [203.446, 94.675, 0], + "to": [0.142, -0.158, 0], + "ti": [-0.151, 0.13, 0] + }, + { + "i": {"x": 0.833, "y": 0.897}, + "o": {"x": 0.167, "y": 0.109}, + "t": 36.8, + "s": [203.886, 94.242, 0], + "to": [0.151, -0.13, 0], + "ti": [-0.157, 0.102, 0] + }, + { + "i": {"x": 0.833, "y": 0.873}, + "o": {"x": 0.167, "y": 0.132}, + "t": 37.6, + "s": [204.349, 93.894, 0], + "to": [0.157, -0.102, 0], + "ti": [-0.161, 0.078, 0] + }, + { + "i": {"x": 0.833, "y": 0.859}, + "o": {"x": 0.167, "y": 0.142}, + "t": 38.4, + "s": [204.827, 93.632, 0], + "to": [0.161, -0.078, 0], + "ti": [-0.163, 0.067, 0] + }, + { + "i": {"x": 0.833, "y": 0.855}, + "o": {"x": 0.167, "y": 0.146}, + "t": 39.2, + "s": [205.315, 93.423, 0], + "to": [0.163, -0.067, 0], + "ti": [-0.166, 0.057, 0] + }, + { + "i": {"x": 0.833, "y": 0.845}, + "o": {"x": 0.167, "y": 0.153}, + "t": 40, + "s": [205.808, 93.233, 0], + "to": [0.166, -0.057, 0], + "ti": [-0.172, 0.042, 0] + }, + { + "i": {"x": 0.833, "y": 0.838}, + "o": {"x": 0.167, "y": 0.159}, + "t": 40.8, + "s": [206.31, 93.079, 0], + "to": [0.172, -0.042, 0], + "ti": [-0.179, 0.025, 0] + }, + { + "i": {"x": 0.833, "y": 0.835}, + "o": {"x": 0.167, "y": 0.163}, + "t": 41.6, + "s": [206.839, 92.979, 0], + "to": [0.179, -0.025, 0], + "ti": [-0.182, 0.01, 0] + }, + { + "i": {"x": 0.833, "y": 0.834}, + "o": {"x": 0.167, "y": 0.167}, + "t": 42.4, + "s": [207.382, 92.928, 0], + "to": [0.182, -0.01, 0], + "ti": [-0.181, -0.005, 0] + }, + { + "i": {"x": 0.833, "y": 0.836}, + "o": {"x": 0.167, "y": 0.168}, + "t": 43.2, + "s": [207.929, 92.922, 0], + "to": [0.181, 0.005, 0], + "ti": [-0.176, -0.017, 0] + }, + { + "i": {"x": 0.833, "y": 0.839}, + "o": {"x": 0.167, "y": 0.165}, + "t": 44, + "s": [208.467, 92.955, 0], + "to": [0.176, 0.017, 0], + "ti": [-0.169, -0.028, 0] + }, + { + "i": {"x": 0.833, "y": 0.844}, + "o": {"x": 0.167, "y": 0.164}, + "t": 44.8, + "s": [208.986, 93.024, 0], + "to": [0.169, 0.028, 0], + "ti": [-0.158, -0.038, 0] + }, + { + "i": {"x": 0.833, "y": 0.85}, + "o": {"x": 0.167, "y": 0.16}, + "t": 45.6, + "s": [209.478, 93.124, 0], + "to": [0.158, 0.038, 0], + "ti": [-0.145, -0.046, 0] + }, + { + "i": {"x": 0.833, "y": 0.852}, + "o": {"x": 0.167, "y": 0.153}, + "t": 46.4, + "s": [209.934, 93.25, 0], + "to": [0.145, 0.046, 0], + "ti": [-0.069, -0.025, 0] + }, + {"t": 47.2001953125, "s": [210.348, 93.398, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.87, 0.772, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 6.4, + "s": [119.453, 55.55, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.948, 0.927, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.231, 0.131, 0]}, + "t": 7.2, + "s": [106.941, 69.697, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.287, 0.579, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.135, -0.59, 0]}, + "t": 8, + "s": [99.865, 94.324, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.885, 0.86, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.065, 0.104, 0]}, + "t": 8.8, + "s": [102.566, 91.274, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.741, 0.971, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.301, 0.205, 0]}, + "t": 9.6, + "s": [90.563, 78.91, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.394, 1.467, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.123, -0.044, 0]}, + "t": 10.4, + "s": [85.972, 70.463, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.896, 0.973, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.069, 0.071, 0]}, + "t": 11.2, + "s": [76.313, 75.971, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.334, 0.741, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.413, -0.04, 0]}, + "t": 12, + "s": [131.692, 39.582, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.923, 0.958, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.067, 0.123, 0]}, + "t": 12.8, + "s": [145.687, 64.182, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.285, 0.922, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.942, -0.085, 0]}, + "t": 13.6, + "s": [75.572, 116.009, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.026, 3.588, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.094, -1.303, 0]}, + "t": 14.4, + "s": [81.277, 90.372, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.88, 0.961, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.02, 0.081, 0]}, + "t": 15.2, + "s": [124.472, 91.912, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.062, 0.923, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.275, -0.072, 0]}, + "t": 16, + "s": [67.544, 42.493, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.861, 1.459, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.036, -0.98, 0]}, + "t": 16.8, + "s": [42.728, 69.036, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.922, 0.917, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.208, 0.071, 0]}, + "t": 17.6, + "s": [85.996, 66.957, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-1.536, -47.553, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.187, 73.988, 0]}, + "t": 18.4, + "s": [114.947, 80.491, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.967, 0.566, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.086, 0.083, 0]}, + "t": 19.2, + "s": [113.049, 80.506, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.925, 0.917, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.054, 0.103, 0]}, + "t": 20, + "s": [57.15, 89.382, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.098, 5.725, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.754, -8.489, 0]}, + "t": 20.8, + "s": [91.118, 126.727, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.09, 0.993, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.045, 0.082, 0]}, + "t": 21.6, + "s": [87.736, 126.364, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.908, 0.868, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.043, -0.008, 0]}, + "t": 22.4, + "s": [95.097, 147.312, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.56, 0.516, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.913, 0.225, 0]}, + "t": 23.2, + "s": [79.819, 128.237, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.128, 0.929, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.088, 0.101, 0]}, + "t": 24, + "s": [78.286, 116.992, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.943, 0.612, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.051, -0.463, 0]}, + "t": 24.8, + "s": [51.103, 62.981, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.755, 0.962, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.177, 0.106, 0]}, + "t": 25.6, + "s": [120.097, 71.216, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.967, 0.78, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.126, -0.07, 0]}, + "t": 26.4, + "s": [97.985, 101.356, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.958, 0.93, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.054, 0.134, 0]}, + "t": 27.2, + "s": [55.144, 84.965, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.921, 0.999, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.086, -0.43, 0]}, + "t": 28, + "s": [81.051, 58.096, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.51, 1.562, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.655, -0.001, 0]}, + "t": 28.8, + "s": [68.289, 62.454, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.243, 1.041, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.072, 0.073, 0]}, + "t": 29.6, + "s": [68.9, 58.129, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.116, 0.929, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.062, 0.028, 0]}, + "t": 30.4, + "s": [64.548, 91.624, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.007, 0.943, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.048, -0.49, 0]}, + "t": 31.2, + "s": [81.603, 41.501, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.027, -0.787, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.007, -0.185, 0]}, + "t": 32, + "s": [40.821, 48.785, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.952, 0.981, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.02, 0.087, 0]}, + "t": 32.8, + "s": [85.22, 46.522, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.945, 1.024, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.112, -0.025, 0]}, + "t": 33.6, + "s": [26.513, 0.273, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.934, 0.915, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.158, 0.018, 0]}, + "t": 34.4, + "s": [51.537, 35.891, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.358, 1.609, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.318, 4.616, 0]}, + "t": 35.2, + "s": [42.897, -9.828, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.956, 0.696, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.089, 0.073, 0]}, + "t": 36, + "s": [44.69, -10.668, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.922, 0.946, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.095, 0.115, 0]}, + "t": 36.8, + "s": [72.117, -3.689, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [2.791, 0.815, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.251, -0.156, 0]}, + "t": 37.6, + "s": [59.287, 14.778, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.827, 0.946, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.08, 0.152, 0]}, + "t": 38.4, + "s": [60.089, 8.351, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.698, -0.404, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.161, -0.154, 0]}, + "t": 39.2, + "s": [42.069, 0.529, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.95, 0.986, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.115, 0.089, 0]}, + "t": 40, + "s": [22.609, 3.273, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.627, 0.926, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.126, -0.016, 0]}, + "t": 40.8, + "s": [-28.548, 46.76, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.957, 0.181, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.107, -0.671, 0]}, + "t": 41.6, + "s": [-8.217, 10.367, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.796, 0.936, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.089, 0.093, 0]}, + "t": 42.4, + "s": [62.57, 14.39, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.988, 0.546, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.141, -0.271, 0]}, + "t": 43.2, + "s": [28.321, 49.863, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.858, 1, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.015, 0.102, 0]}, + "t": 44, + "s": [-21.183, 41.528, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.006, 0.962, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.202, 0, 0]}, + "t": 44.8, + "s": [20.981, 4.416, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.939, 0.899, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.005, -0.071, 0]}, + "t": 45.6, + "s": [50.62, 41.308, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.223, 0.468, 0]}, + "t": 46.4, + "s": [18.942, 21.34, 100] + }, + {"t": 47.2001953125, "s": [27.547, 17.011, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": {"a": 0, "k": [10, 10], "ix": 2}, + "p": {"a": 0, "k": [0, 0], "ix": 3}, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [1, 0.101960785687, 0.380392163992, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Ellipse 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 6.400390625, + "op": 48, + "st": 6.400390625, + "bm": 0 + }, + { + "ddd": 0, + "ind": 48, + "ty": 4, + "nm": "Shape Layer 4", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 1.6, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 5.6, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 23.2, + "s": [100] + }, + {"t": 36, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 1.6, + "s": [273.94, 260.349, 0], + "to": [-0.179, 0.314, 0], + "ti": [0.915, -1.476, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 2.4, + "s": [272.864, 262.231, 0], + "to": [-0.915, 1.476, 0], + "ti": [2.375, -3.065, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 3.2, + "s": [268.451, 269.206, 0], + "to": [-2.375, 3.065, 0], + "ti": [3.841, -3.636, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 4, + "s": [258.614, 280.62, 0], + "to": [-3.841, 3.636, 0], + "ti": [4.317, -2.988, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 4.8, + "s": [245.406, 291.021, 0], + "to": [-4.317, 2.988, 0], + "ti": [3.939, -2.213, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 5.6, + "s": [232.715, 298.549, 0], + "to": [-3.939, 2.213, 0], + "ti": [3.368, -1.76, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 6.4, + "s": [221.77, 304.296, 0], + "to": [-3.368, 1.76, 0], + "ti": [2.855, -1.514, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 7.2, + "s": [212.51, 309.106, 0], + "to": [-2.855, 1.514, 0], + "ti": [2.434, -1.366, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8, + "s": [204.641, 313.381, 0], + "to": [-2.434, 1.366, 0], + "ti": [2.092, -1.261, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [197.904, 317.3, 0], + "to": [-2.092, 1.261, 0], + "ti": [1.81, -1.177, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [192.09, 320.946, 0], + "to": [-1.81, 1.177, 0], + "ti": [1.575, -1.103, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 10.4, + "s": [187.044, 324.36, 0], + "to": [-1.575, 1.103, 0], + "ti": [1.376, -1.035, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 11.2, + "s": [182.643, 327.564, 0], + "to": [-1.376, 1.035, 0], + "ti": [1.205, -0.972, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12, + "s": [178.791, 330.572, 0], + "to": [-1.205, 0.972, 0], + "ti": [1.057, -0.911, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12.8, + "s": [175.413, 333.393, 0], + "to": [-1.057, 0.911, 0], + "ti": [0.928, -0.852, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 13.6, + "s": [172.447, 336.036, 0], + "to": [-0.928, 0.852, 0], + "ti": [0.814, -0.797, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 14.4, + "s": [169.845, 338.508, 0], + "to": [-0.814, 0.797, 0], + "ti": [0.712, -0.743, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 15.2, + "s": [167.565, 340.816, 0], + "to": [-0.712, 0.743, 0], + "ti": [0.621, -0.692, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16, + "s": [165.574, 342.967, 0], + "to": [-0.621, 0.692, 0], + "ti": [0.539, -0.642, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16.8, + "s": [163.841, 344.967, 0], + "to": [-0.539, 0.642, 0], + "ti": [0.464, -0.595, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 17.6, + "s": [162.342, 346.821, 0], + "to": [-0.464, 0.595, 0], + "ti": [0.397, -0.549, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [161.056, 348.535, 0], + "to": [-0.397, 0.549, 0], + "ti": [0.336, -0.504, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [159.962, 350.113, 0], + "to": [-0.336, 0.504, 0], + "ti": [0.28, -0.461, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20, + "s": [159.042, 351.559, 0], + "to": [-0.28, 0.461, 0], + "ti": [0.23, -0.419, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [158.282, 352.878, 0], + "to": [-0.23, 0.419, 0], + "ti": [0.185, -0.378, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 21.6, + "s": [157.663, 354.073, 0], + "to": [-0.185, 0.378, 0], + "ti": [0.145, -0.339, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 22.4, + "s": [157.172, 355.149, 0], + "to": [-0.145, 0.339, 0], + "ti": [0.11, -0.301, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 23.2, + "s": [156.793, 356.108, 0], + "to": [-0.11, 0.301, 0], + "ti": [0.08, -0.264, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24, + "s": [156.511, 356.955, 0], + "to": [-0.08, 0.264, 0], + "ti": [0.054, -0.227, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24.8, + "s": [156.313, 357.691, 0], + "to": [-0.054, 0.227, 0], + "ti": [0.034, -0.191, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 25.6, + "s": [156.184, 358.318, 0], + "to": [-0.034, 0.191, 0], + "ti": [0.018, -0.156, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26.4, + "s": [156.11, 358.839, 0], + "to": [-0.018, 0.156, 0], + "ti": [0.007, -0.122, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 27.2, + "s": [156.077, 359.255, 0], + "to": [-0.007, 0.122, 0], + "ti": [-0.009, -0.098, 0] + }, + { + "i": {"x": 0.833, "y": 0.992}, + "o": {"x": 0.167, "y": 0.008}, + "t": 28, + "s": [156.07, 359.568, 0], + "to": [0.009, 0.098, 0], + "ti": [-0.034, -0.089, 0] + }, + { + "i": {"x": 0.833, "y": 0.96}, + "o": {"x": 0.167, "y": 0.037}, + "t": 28.8, + "s": [156.129, 359.841, 0], + "to": [0.034, 0.089, 0], + "ti": [-0.059, -0.084, 0] + }, + { + "i": {"x": 0.833, "y": 0.925}, + "o": {"x": 0.167, "y": 0.069}, + "t": 29.6, + "s": [156.271, 360.101, 0], + "to": [0.059, 0.084, 0], + "ti": [-0.08, -0.078, 0] + }, + { + "i": {"x": 0.833, "y": 0.898}, + "o": {"x": 0.167, "y": 0.094}, + "t": 30.4, + "s": [156.482, 360.344, 0], + "to": [0.08, 0.078, 0], + "ti": [-0.098, -0.071, 0] + }, + { + "i": {"x": 0.833, "y": 0.879}, + "o": {"x": 0.167, "y": 0.115}, + "t": 31.2, + "s": [156.751, 360.569, 0], + "to": [0.098, 0.071, 0], + "ti": [-0.112, -0.063, 0] + }, + { + "i": {"x": 0.833, "y": 0.864}, + "o": {"x": 0.167, "y": 0.13}, + "t": 32, + "s": [157.068, 360.771, 0], + "to": [0.112, 0.063, 0], + "ti": [-0.124, -0.054, 0] + }, + { + "i": {"x": 0.833, "y": 0.855}, + "o": {"x": 0.167, "y": 0.142}, + "t": 32.8, + "s": [157.425, 360.948, 0], + "to": [0.124, 0.054, 0], + "ti": [-0.129, -0.049, 0] + }, + { + "i": {"x": 0.833, "y": 0.855}, + "o": {"x": 0.167, "y": 0.146}, + "t": 33.6, + "s": [157.811, 361.097, 0], + "to": [0.129, 0.049, 0], + "ti": [-0.126, -0.051, 0] + }, + { + "i": {"x": 0.833, "y": 0.864}, + "o": {"x": 0.167, "y": 0.142}, + "t": 34.4, + "s": [158.201, 361.241, 0], + "to": [0.126, 0.051, 0], + "ti": [-0.118, -0.056, 0] + }, + { + "i": {"x": 0.833, "y": 0.872}, + "o": {"x": 0.167, "y": 0.135}, + "t": 35.2, + "s": [158.569, 361.404, 0], + "to": [0.118, 0.056, 0], + "ti": [-0.109, -0.06, 0] + }, + { + "i": {"x": 0.833, "y": 0.881}, + "o": {"x": 0.167, "y": 0.127}, + "t": 36, + "s": [158.91, 361.58, 0], + "to": [0.109, 0.06, 0], + "ti": [-0.098, -0.062, 0] + }, + { + "i": {"x": 0.833, "y": 0.891}, + "o": {"x": 0.167, "y": 0.118}, + "t": 36.8, + "s": [159.221, 361.765, 0], + "to": [0.098, 0.062, 0], + "ti": [-0.087, -0.063, 0] + }, + { + "i": {"x": 0.833, "y": 0.902}, + "o": {"x": 0.167, "y": 0.108}, + "t": 37.6, + "s": [159.499, 361.954, 0], + "to": [0.087, 0.063, 0], + "ti": [-0.074, -0.063, 0] + }, + { + "i": {"x": 0.833, "y": 0.914}, + "o": {"x": 0.167, "y": 0.096}, + "t": 38.4, + "s": [159.741, 362.144, 0], + "to": [0.074, 0.063, 0], + "ti": [-0.062, -0.061, 0] + }, + { + "i": {"x": 0.833, "y": 0.929}, + "o": {"x": 0.167, "y": 0.082}, + "t": 39.2, + "s": [159.945, 362.33, 0], + "to": [0.062, 0.061, 0], + "ti": [-0.049, -0.058, 0] + }, + { + "i": {"x": 0.833, "y": 0.945}, + "o": {"x": 0.167, "y": 0.065}, + "t": 40, + "s": [160.111, 362.509, 0], + "to": [0.049, 0.058, 0], + "ti": [-0.036, -0.053, 0] + }, + { + "i": {"x": 0.833, "y": 0.963}, + "o": {"x": 0.167, "y": 0.045}, + "t": 40.8, + "s": [160.237, 362.677, 0], + "to": [0.036, 0.053, 0], + "ti": [-0.023, -0.048, 0] + }, + { + "i": {"x": 0.833, "y": 0.981}, + "o": {"x": 0.167, "y": 0.023}, + "t": 41.6, + "s": [160.325, 362.83, 0], + "to": [0.023, 0.048, 0], + "ti": [-0.011, -0.042, 0] + }, + { + "i": {"x": 0.833, "y": 0.998}, + "o": {"x": 0.167, "y": 0.003}, + "t": 42.4, + "s": [160.376, 362.965, 0], + "to": [0.011, 0.042, 0], + "ti": [0.001, -0.034, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 43.2, + "s": [160.39, 363.08, 0], + "to": [-0.001, 0.034, 0], + "ti": [0.011, -0.026, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44, + "s": [160.371, 363.171, 0], + "to": [-0.011, 0.026, 0], + "ti": [0.021, -0.017, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44.8, + "s": [160.322, 363.235, 0], + "to": [-0.021, 0.017, 0], + "ti": [0.029, -0.006, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 45.6, + "s": [160.247, 363.27, 0], + "to": [-0.029, 0.006, 0], + "ti": [0.035, 0.004, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 46.4, + "s": [160.149, 363.273, 0], + "to": [-0.035, -0.004, 0], + "ti": [0.019, 0.005, 0] + }, + {"t": 47.2001953125, "s": [160.035, 363.244, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.052, 0.912, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 1.6, + "s": [91.411, 73.902, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.827, 0.39, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.032, 1.61, 0]}, + "t": 2.4, + "s": [65.83, 91.918, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.046, 1.571, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.161, 0.097, 0]}, + "t": 3.2, + "s": [107.448, 92.901, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.942, 0.923, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.03, 0.073, 0]}, + "t": 4, + "s": [152.078, 99.113, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.847, 0.674, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.195, -0.969, 0]}, + "t": 4.8, + "s": [82.703, 50.368, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.029, 0.728, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.183, 0.112, 0]}, + "t": 5.6, + "s": [103.48, 54.226, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.79, 0.949, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.022, 0.12, 0]}, + "t": 6.4, + "s": [120.884, 65.462, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.94, 0.95, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.138, -0.135, 0]}, + "t": 7.2, + "s": [97.362, 90.861, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.855, 1.74, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.209, -0.125, 0]}, + "t": 8, + "s": [61.56, 81.156, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.023, 1.03, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.196, 0.075, 0]}, + "t": 8.8, + "s": [71.774, 85.037, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.369, 0.932, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.018, 0.022, 0]}, + "t": 9.6, + "s": [79.328, 46.686, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.894, 0.844, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.068, -0.362, 0]}, + "t": 10.4, + "s": [69.652, 98.9, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.223, 1.075, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.384, 0.179, 0]}, + "t": 11.2, + "s": [122.192, 89.119, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.92, 0.879, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.061, 0.04, 0]}, + "t": 12, + "s": [136.768, 80.556, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.268, 1.123, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.772, 0.269, 0]}, + "t": 12.8, + "s": [83.231, 96.867, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.041, 0.715, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.089, 0.05, 0]}, + "t": 13.6, + "s": [85.636, 104.189, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.882, 0.919, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.028, 0.118, 0]}, + "t": 14.4, + "s": [119.843, 86.028, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.101, -1.336, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.286, -2.377, 0]}, + "t": 15.2, + "s": [68.608, 42.162, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.862, 0.996, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.046, 0.086, 0]}, + "t": 16, + "s": [47.52, 43.647, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.951, 0.979, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.21, -0.004, 0]}, + "t": 16.8, + "s": [94.079, 83.818, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.63, 0.826, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.12, -0.028, 0]}, + "t": 17.6, + "s": [124.614, 45.446, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.959, 0.867, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.108, 0.16, 0]}, + "t": 18.4, + "s": [112.121, 74.09, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.798, 1.043, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.082, 0.224, 0]}, + "t": 19.2, + "s": [69.17, 105.139, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.989, 1.056, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.142, 0.028, 0]}, + "t": 20, + "s": [90.804, 123.544, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.836, 0.968, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.013, 0.034, 0]}, + "t": 20.8, + "s": [121.588, 95.744, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.88, 0.908, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.17, -0.053, 0]}, + "t": 21.6, + "s": [95.051, 142.325, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.702, 0.553, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.275, 0.917, 0]}, + "t": 22.4, + "s": [69.508, 113.896, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.962, 0.63, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.116, 0.102, 0]}, + "t": 23.2, + "s": [58.415, 111.056, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.975, 0.97, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.069, 0.108, 0]}, + "t": 24, + "s": [29.777, 98.67, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.682, 0.963, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.036, -0.046, 0]}, + "t": 24.8, + "s": [45.407, 56.133, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.99, 0.982, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.113, -0.066, 0]}, + "t": 25.6, + "s": [34.491, 83.602, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.867, 1.248, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.012, -0.022, 0]}, + "t": 26.4, + "s": [3.789, 68.283, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.991, 0.862, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.224, 0.062, 0]}, + "t": 27.2, + "s": [30.69, 80.365, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.11, 1.012, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.01, 0.211, 0]}, + "t": 28, + "s": [46.645, 32.371, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.919, 0.974, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.047, 0.011, 0]}, + "t": 28.8, + "s": [32.343, 1.12, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.964, 1.001, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-2.468, -0.037, 0]}, + "t": 29.6, + "s": [65.552, 37.014, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.026, 0.929, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.087, 0.001, 0]}, + "t": 30.4, + "s": [64.467, 12.19, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.059, -0.017, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.02, -0.473, 0]}, + "t": 31.2, + "s": [40, 37.362, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.936, 0.93, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.034, 0.091, 0]}, + "t": 32, + "s": [72.228, 33.594, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.744, 0.949, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.269, -0.441, 0]}, + "t": 32.8, + "s": [17.233, -8.641, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.021, 1.149, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.124, -0.134, 0]}, + "t": 33.6, + "s": [30.25, -1.935, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.994, 0.976, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.017, 0.053, 0]}, + "t": 34.4, + "s": [57.17, -4.506, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.998, 1.452, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.006, -0.034, 0]}, + "t": 35.2, + "s": [23.549, 2.656, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.948, 0.864, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.002, 0.07, 0]}, + "t": 36, + "s": [54.911, -2.436, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.044, 1.08, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.138, 0.216, 0]}, + "t": 36.8, + "s": [24.231, 30.266, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.98, 0.929, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.029, 0.041, 0]}, + "t": 37.6, + "s": [35.767, 50.837, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.284, 0.351, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.027, -0.49, 0]}, + "t": 38.4, + "s": [18.177, 10.486, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.93, 0.976, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.064, 0.096, 0]}, + "t": 39.2, + "s": [31.443, 16.354, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.369, 0.815, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.427, -0.033, 0]}, + "t": 40, + "s": [-27.024, 56.172, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.885, 0.996, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.096, 0.152, 0]}, + "t": 40.8, + "s": [-17.47, 27.705, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.145, 0.868, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.306, -0.005, 0]}, + "t": 41.6, + "s": [45.271, -6.879, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.872, 1.081, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.053, 0.227, 0]}, + "t": 42.4, + "s": [68.762, 25.916, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.048, 1.039, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.239, 0.041, 0]}, + "t": 43.2, + "s": [4.456, 44.914, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.954, 0.959, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.03, 0.026, 0]}, + "t": 44, + "s": [-30.068, 7.408, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.082, 0.922, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.101, -0.08, 0]}, + "t": 44.8, + "s": [24.371, 62.294, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.894, 2.56, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.041, -1.191, 0]}, + "t": 45.6, + "s": [-0.235, 34.376, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.394, 0.079, 0]}, + "t": 46.4, + "s": [48.622, 36.203, 100] + }, + {"t": 47.2001953125, "s": [61.716, 0.231, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": {"a": 0, "k": [10, 10], "ix": 2}, + "p": {"a": 0, "k": [0, 0], "ix": 3}, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [1, 0.101960785687, 0.380392163992, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Ellipse 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 1.599609375, + "op": 48, + "st": 1.599609375, + "bm": 0 + }, + { + "ddd": 0, + "ind": 49, + "ty": 4, + "nm": "Shape Layer 3", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 5.6, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 9.6, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 27.2, + "s": [100] + }, + {"t": 40, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 5.6, + "s": [272.377, 258.087, 0], + "to": [-0.394, 0.137, 0], + "ti": [2.139, -0.681, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 6.4, + "s": [270.01, 258.906, 0], + "to": [-2.139, 0.681, 0], + "ti": [5.098, -1.104, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 7.2, + "s": [259.541, 262.172, 0], + "to": [-5.098, 1.104, 0], + "ti": [7.13, -0.303, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8, + "s": [239.424, 265.531, 0], + "to": [-7.13, 0.303, 0], + "ti": [6.918, 1.295, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 8.8, + "s": [216.76, 263.988, 0], + "to": [-6.918, -1.295, 0], + "ti": [5.553, 2.383, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 9.6, + "s": [197.916, 257.762, 0], + "to": [-5.553, -2.383, 0], + "ti": [4.294, 2.71, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 10.4, + "s": [183.44, 249.693, 0], + "to": [-4.294, -2.71, 0], + "ti": [3.412, 2.643, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 11.2, + "s": [172.149, 241.499, 0], + "to": [-3.412, -2.643, 0], + "ti": [2.824, 2.427, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12, + "s": [162.967, 233.838, 0], + "to": [-2.824, -2.427, 0], + "ti": [2.43, 2.167, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 12.8, + "s": [155.204, 226.937, 0], + "to": [-2.43, -2.167, 0], + "ti": [2.166, 1.903, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 13.6, + "s": [148.386, 220.833, 0], + "to": [-2.166, -1.903, 0], + "ti": [1.988, 1.643, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 14.4, + "s": [142.207, 215.519, 0], + "to": [-1.988, -1.643, 0], + "ti": [1.866, 1.384, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 15.2, + "s": [136.458, 210.978, 0], + "to": [-1.866, -1.384, 0], + "ti": [1.768, 1.113, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16, + "s": [131.01, 207.214, 0], + "to": [-1.768, -1.113, 0], + "ti": [1.677, 0.828, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 16.8, + "s": [125.848, 204.301, 0], + "to": [-1.677, -0.828, 0], + "ti": [1.589, 0.546, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 17.6, + "s": [120.949, 202.245, 0], + "to": [-1.589, -0.546, 0], + "ti": [1.493, 0.277, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 18.4, + "s": [116.315, 201.024, 0], + "to": [-1.493, -0.277, 0], + "ti": [1.38, 0.034, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 19.2, + "s": [111.993, 200.584, 0], + "to": [-1.38, -0.034, 0], + "ti": [1.254, -0.168, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20, + "s": [108.033, 200.82, 0], + "to": [-1.254, 0.168, 0], + "ti": [1.122, -0.322, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 20.8, + "s": [104.469, 201.591, 0], + "to": [-1.122, 0.322, 0], + "ti": [0.991, -0.429, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 21.6, + "s": [101.304, 202.75, 0], + "to": [-0.991, 0.429, 0], + "ti": [0.869, -0.496, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 22.4, + "s": [98.52, 204.163, 0], + "to": [-0.869, 0.496, 0], + "ti": [0.759, -0.533, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 23.2, + "s": [96.088, 205.725, 0], + "to": [-0.759, 0.533, 0], + "ti": [0.662, -0.548, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24, + "s": [93.965, 207.359, 0], + "to": [-0.662, 0.548, 0], + "ti": [0.577, -0.547, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 24.8, + "s": [92.114, 209.011, 0], + "to": [-0.577, 0.547, 0], + "ti": [0.502, -0.535, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 25.6, + "s": [90.501, 210.642, 0], + "to": [-0.502, 0.535, 0], + "ti": [0.436, -0.515, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26.4, + "s": [89.1, 212.221, 0], + "to": [-0.436, 0.515, 0], + "ti": [0.376, -0.488, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 27.2, + "s": [87.887, 213.729, 0], + "to": [-0.376, 0.488, 0], + "ti": [0.324, -0.458, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28, + "s": [86.842, 215.15, 0], + "to": [-0.324, 0.458, 0], + "ti": [0.277, -0.424, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 28.8, + "s": [85.945, 216.475, 0], + "to": [-0.277, 0.424, 0], + "ti": [0.234, -0.388, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 29.6, + "s": [85.182, 217.694, 0], + "to": [-0.234, 0.388, 0], + "ti": [0.195, -0.349, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 30.4, + "s": [84.541, 218.8, 0], + "to": [-0.195, 0.349, 0], + "ti": [0.16, -0.31, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 31.2, + "s": [84.009, 219.79, 0], + "to": [-0.16, 0.31, 0], + "ti": [0.129, -0.269, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32, + "s": [83.578, 220.658, 0], + "to": [-0.129, 0.269, 0], + "ti": [0.099, -0.226, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [83.238, 221.401, 0], + "to": [-0.099, 0.226, 0], + "ti": [0.072, -0.183, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [82.984, 222.016, 0], + "to": [-0.072, 0.183, 0], + "ti": [0.048, -0.14, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [82.806, 222.502, 0], + "to": [-0.048, 0.14, 0], + "ti": [0.026, -0.097, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 35.2, + "s": [82.697, 222.858, 0], + "to": [-0.026, 0.097, 0], + "ti": [0.005, -0.052, 0] + }, + { + "i": {"x": 0.833, "y": 0.996}, + "o": {"x": 0.167, "y": 0.007}, + "t": 36, + "s": [82.651, 223.082, 0], + "to": [-0.005, 0.052, 0], + "ti": [-0.014, -0.008, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.111}, + "t": 36.8, + "s": [82.666, 223.173, 0], + "to": [0.014, 0.008, 0], + "ti": [-0.027, 0.032, 0] + }, + { + "i": {"x": 0.833, "y": 0.948}, + "o": {"x": 0.167, "y": 0.033}, + "t": 37.6, + "s": [82.736, 223.128, 0], + "to": [0.027, -0.032, 0], + "ti": [-0.027, 0.062, 0] + }, + { + "i": {"x": 0.833, "y": 0.981}, + "o": {"x": 0.167, "y": 0.015}, + "t": 38.4, + "s": [82.826, 222.979, 0], + "to": [0.027, -0.062, 0], + "ti": [-0.023, 0.085, 0] + }, + { + "i": {"x": 0.833, "y": 0.992}, + "o": {"x": 0.167, "y": 0.007}, + "t": 39.2, + "s": [82.9, 222.757, 0], + "to": [0.023, -0.085, 0], + "ti": [-0.025, 0.099, 0] + }, + { + "i": {"x": 0.833, "y": 0.988}, + "o": {"x": 0.167, "y": 0.012}, + "t": 40, + "s": [82.964, 222.469, 0], + "to": [0.025, -0.099, 0], + "ti": [-0.032, 0.102, 0] + }, + { + "i": {"x": 0.833, "y": 0.983}, + "o": {"x": 0.167, "y": 0.017}, + "t": 40.8, + "s": [83.05, 222.164, 0], + "to": [0.032, -0.102, 0], + "ti": [-0.036, 0.101, 0] + }, + { + "i": {"x": 0.833, "y": 0.979}, + "o": {"x": 0.167, "y": 0.021}, + "t": 41.6, + "s": [83.155, 221.857, 0], + "to": [0.036, -0.101, 0], + "ti": [-0.038, 0.098, 0] + }, + { + "i": {"x": 0.833, "y": 0.978}, + "o": {"x": 0.167, "y": 0.024}, + "t": 42.4, + "s": [83.269, 221.556, 0], + "to": [0.038, -0.098, 0], + "ti": [-0.038, 0.093, 0] + }, + { + "i": {"x": 0.833, "y": 0.976}, + "o": {"x": 0.167, "y": 0.025}, + "t": 43.2, + "s": [83.385, 221.268, 0], + "to": [0.038, -0.093, 0], + "ti": [-0.035, 0.085, 0] + }, + { + "i": {"x": 0.833, "y": 0.977}, + "o": {"x": 0.167, "y": 0.026}, + "t": 44, + "s": [83.497, 221, 0], + "to": [0.035, -0.085, 0], + "ti": [-0.031, 0.076, 0] + }, + { + "i": {"x": 0.833, "y": 0.979}, + "o": {"x": 0.167, "y": 0.024}, + "t": 44.8, + "s": [83.598, 220.758, 0], + "to": [0.031, -0.076, 0], + "ti": [-0.024, 0.065, 0] + }, + { + "i": {"x": 0.833, "y": 0.984}, + "o": {"x": 0.167, "y": 0.02}, + "t": 45.6, + "s": [83.682, 220.545, 0], + "to": [0.024, -0.065, 0], + "ti": [-0.017, 0.053, 0] + }, + { + "i": {"x": 0.833, "y": 0.99}, + "o": {"x": 0.167, "y": 0.012}, + "t": 46.4, + "s": [83.745, 220.367, 0], + "to": [0.017, -0.053, 0], + "ti": [-0.006, 0.023, 0] + }, + {"t": 47.2001953125, "s": [83.781, 220.227, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.852, 3.788, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 5.6, + "s": [121.49, 88.737, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.91, 0.921, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.19, 0.081, 0]}, + "t": 6.4, + "s": [91.076, 88.159, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.429, -3.485, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.162, -1.415, 0]}, + "t": 7.2, + "s": [67.412, 108.062, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.033, 0.953, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.098, 0.085, 0]}, + "t": 8, + "s": [65.583, 106.955, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.841, 0.807, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.024, -0.106, 0]}, + "t": 8.8, + "s": [54.874, 48.475, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.733, 0.874, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.176, 0.146, 0]}, + "t": 9.6, + "s": [69.879, 74.186, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.032, 1.001, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.121, 0.246, 0]}, + "t": 10.4, + "s": [83.434, 108.14, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.978, 0.868, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.023, 0.001, 0]}, + "t": 11.2, + "s": [113.236, 125.507, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.937, 0.727, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.03, 0.227, 0]}, + "t": 12, + "s": [72.085, 108.002, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.63, 0.848, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.261, 0.12, 0]}, + "t": 12.8, + "s": [102.383, 97.845, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.922, 0.819, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.108, 0.184, 0]}, + "t": 13.6, + "s": [95.054, 74.753, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.758, 1.104, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.116, 0.155, 0]}, + "t": 14.4, + "s": [69.833, 55.593, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.253, 0.933, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.127, 0.046, 0]}, + "t": 15.2, + "s": [71.585, 33.206, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.962, 0.845, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.089, -0.336, 0]}, + "t": 16, + "s": [74.924, 83.413, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.895, 1.179, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.069, 0.18, 0]}, + "t": 16.8, + "s": [121.778, 73.433, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.929, 0.903, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.41, 0.057, 0]}, + "t": 17.6, + "s": [96.063, 64.842, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-2.343, 1.503, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.493, 0.61, 0]}, + "t": 18.4, + "s": [89.506, 91.864, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1, 1.002, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.085, 0.071, 0]}, + "t": 19.2, + "s": [90.453, 96.143, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.913, 0.848, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0, 0.002, 0]}, + "t": 20, + "s": [127.532, 66.021, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.203, 1.019, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.831, 0.185, 0]}, + "t": 20.8, + "s": [90.276, 96.965, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.094, 0.969, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.059, 0.015, 0]}, + "t": 21.6, + "s": [88.5, 122.317, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.722, 1.067, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.044, -0.049, 0]}, + "t": 22.4, + "s": [94.599, 91.269, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.905, 0.958, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.119, 0.037, 0]}, + "t": 23.2, + "s": [81.585, 110.87, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.81, 0.948, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.689, -0.085, 0]}, + "t": 24, + "s": [51.164, 75.568, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.817, 1.401, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.148, -0.141, 0]}, + "t": 24.8, + "s": [46.977, 93.082, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.272, 0.996, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.153, 0.069, 0]}, + "t": 25.6, + "s": [41.615, 86.585, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.928, 0.774, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.064, -0.004, 0]}, + "t": 26.4, + "s": [35.186, 124.337, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.499, 0.946, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.532, 0.132, 0]}, + "t": 27.2, + "s": [62.591, 88.269, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.951, 0.921, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.071, -0.154, 0]}, + "t": 28, + "s": [58.881, 26.321, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.072, 1.831, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.121, -1.508, 0]}, + "t": 28.8, + "s": [84.818, 48.109, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.946, 0.916, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.038, 0.076, 0]}, + "t": 29.6, + "s": [74.254, 46.968, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.594, 35.489, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.15, 12.356, 0]}, + "t": 30.4, + "s": [93.883, 59.486, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.867, 0.926, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.105, 0.083, 0]}, + "t": 31.2, + "s": [86.872, 59.571, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.076, 0.594, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.224, -0.643, 0]}, + "t": 32, + "s": [59.763, 24.304, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.02, 0.969, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.04, 0.105, 0]}, + "t": 32.8, + "s": [43.653, 28.352, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.928, 1.059, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.016, -0.049, 0]}, + "t": 33.6, + "s": [74.399, 44.017, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.401, 0.902, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.523, 0.034, 0]}, + "t": 34.4, + "s": [36.198, 34.152, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.943, 0.234, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.069, 0.557, 0]}, + "t": 35.2, + "s": [41.448, 50.974, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.109, 1.139, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.183, 0.094, 0]}, + "t": 36, + "s": [10.923, 53.931, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.042, 0.95, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.047, 0.052, 0]}, + "t": 36.8, + "s": [20.467, 78.157, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.003, 0.801, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.028, -0.123, 0]}, + "t": 37.6, + "s": [-1.575, 13.482, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.927, 0.974, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.003, 0.144, 0]}, + "t": 38.4, + "s": [31.467, 39.632, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.201, 0.662, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.568, -0.037, 0]}, + "t": 39.2, + "s": [-2.832, 75.796, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.885, 0.948, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.093, 0.111, 0]}, + "t": 40, + "s": [1.556, 50.773, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.966, 0.83, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.302, -0.136, 0]}, + "t": 40.8, + "s": [39.258, -25.561, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.107, 1.032, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.057, 0.164, 0]}, + "t": 41.6, + "s": [53.602, 3.457, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.962, 1.046, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.092, 0.023, 0]}, + "t": 42.4, + "s": [45.062, 33.613, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.964, 0.941, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.07, 0.03, 0]}, + "t": 43.2, + "s": [-37.848, -8.287, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.116, 0.998, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.063, -0.206, 0]}, + "t": 44, + "s": [7.213, 56.765, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.896, 1.241, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.049, -0.003, 0]}, + "t": 44.8, + "s": [-18.526, 38.06, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.835, 0.935, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.416, 0.062, 0]}, + "t": 45.6, + "s": [43.172, 56.215, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.168, -0.296, 0]}, + "t": 46.4, + "s": [58.626, -14.531, 100] + }, + {"t": 47.2001953125, "s": [73.773, 0.993, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": {"a": 0, "k": [10, 10], "ix": 2}, + "p": {"a": 0, "k": [0, 0], "ix": 3}, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [0.313725501299, 0.890196084976, 0.760784327984, 1], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Ellipse 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 5.599609375, + "op": 48, + "st": 5.599609375, + "bm": 0 + }, + { + "ddd": 0, + "ind": 50, + "ty": 4, + "nm": "Shape Layer 2", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 4.8, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 8.8, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 26.4, + "s": [100] + }, + {"t": 39.2001953125, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 0.999}, + "o": {"x": 0.167, "y": 0}, + "t": 4.8, + "s": [272.75, 257.654, 0], + "to": [0.022, 0.426, 0], + "ti": [-0.208, -2.079, 0] + }, + { + "i": {"x": 0.833, "y": 0.997}, + "o": {"x": 0.167, "y": 0.001}, + "t": 5.6, + "s": [272.88, 260.209, 0], + "to": [0.208, 2.079, 0], + "ti": [-0.762, -4.636, 0] + }, + { + "i": {"x": 0.833, "y": 0.994}, + "o": {"x": 0.167, "y": 0.005}, + "t": 6.4, + "s": [273.997, 270.127, 0], + "to": [0.762, 4.636, 0], + "ti": [-1.59, -6.205, 0] + }, + { + "i": {"x": 0.833, "y": 0.986}, + "o": {"x": 0.167, "y": 0.014}, + "t": 7.2, + "s": [277.455, 288.025, 0], + "to": [1.59, 6.205, 0], + "ti": [-2.259, -5.901, 0] + }, + { + "i": {"x": 0.833, "y": 0.973}, + "o": {"x": 0.167, "y": 0.032}, + "t": 8, + "s": [283.537, 307.355, 0], + "to": [2.259, 5.901, 0], + "ti": [-2.568, -4.763, 0] + }, + { + "i": {"x": 0.833, "y": 0.956}, + "o": {"x": 0.167, "y": 0.052}, + "t": 8.8, + "s": [291.011, 323.433, 0], + "to": [2.568, 4.763, 0], + "ti": [-2.65, -3.689, 0] + }, + { + "i": {"x": 0.833, "y": 0.937}, + "o": {"x": 0.167, "y": 0.074}, + "t": 9.6, + "s": [298.946, 335.933, 0], + "to": [2.65, 3.689, 0], + "ti": [-2.621, -2.842, 0] + }, + { + "i": {"x": 0.833, "y": 0.918}, + "o": {"x": 0.167, "y": 0.094}, + "t": 10.4, + "s": [306.911, 345.569, 0], + "to": [2.621, 2.842, 0], + "ti": [-2.532, -2.186, 0] + }, + { + "i": {"x": 0.833, "y": 0.901}, + "o": {"x": 0.167, "y": 0.113}, + "t": 11.2, + "s": [314.674, 352.986, 0], + "to": [2.532, 2.186, 0], + "ti": [-2.408, -1.678, 0] + }, + { + "i": {"x": 0.833, "y": 0.886}, + "o": {"x": 0.167, "y": 0.128}, + "t": 12, + "s": [322.1, 358.684, 0], + "to": [2.408, 1.678, 0], + "ti": [-2.266, -1.285, 0] + }, + { + "i": {"x": 0.833, "y": 0.874}, + "o": {"x": 0.167, "y": 0.141}, + "t": 12.8, + "s": [329.119, 363.056, 0], + "to": [2.266, 1.285, 0], + "ti": [-2.117, -0.981, 0] + }, + { + "i": {"x": 0.833, "y": 0.864}, + "o": {"x": 0.167, "y": 0.15}, + "t": 13.6, + "s": [335.695, 366.397, 0], + "to": [2.117, 0.981, 0], + "ti": [-1.968, -0.746, 0] + }, + { + "i": {"x": 0.833, "y": 0.857}, + "o": {"x": 0.167, "y": 0.157}, + "t": 14.4, + "s": [341.819, 368.944, 0], + "to": [1.968, 0.746, 0], + "ti": [-1.824, -0.565, 0] + }, + { + "i": {"x": 0.833, "y": 0.853}, + "o": {"x": 0.167, "y": 0.163}, + "t": 15.2, + "s": [347.502, 370.875, 0], + "to": [1.824, 0.565, 0], + "ti": [-1.688, -0.424, 0] + }, + { + "i": {"x": 0.833, "y": 0.848}, + "o": {"x": 0.167, "y": 0.167}, + "t": 16, + "s": [352.764, 372.332, 0], + "to": [1.688, 0.424, 0], + "ti": [-1.56, -0.315, 0] + }, + { + "i": {"x": 0.833, "y": 0.844}, + "o": {"x": 0.167, "y": 0.168}, + "t": 16.8, + "s": [357.63, 373.419, 0], + "to": [1.56, 0.315, 0], + "ti": [-1.442, -0.23, 0] + }, + { + "i": {"x": 0.833, "y": 0.843}, + "o": {"x": 0.167, "y": 0.171}, + "t": 17.6, + "s": [362.126, 374.22, 0], + "to": [1.442, 0.23, 0], + "ti": [-1.332, -0.163, 0] + }, + { + "i": {"x": 0.833, "y": 0.842}, + "o": {"x": 0.167, "y": 0.172}, + "t": 18.4, + "s": [366.28, 374.797, 0], + "to": [1.332, 0.163, 0], + "ti": [-1.23, -0.11, 0] + }, + { + "i": {"x": 0.833, "y": 0.84}, + "o": {"x": 0.167, "y": 0.173}, + "t": 19.2, + "s": [370.118, 375.198, 0], + "to": [1.23, 0.11, 0], + "ti": [-1.135, -0.068, 0] + }, + { + "i": {"x": 0.833, "y": 0.84}, + "o": {"x": 0.167, "y": 0.174}, + "t": 20, + "s": [373.661, 375.459, 0], + "to": [1.135, 0.068, 0], + "ti": [-1.047, -0.035, 0] + }, + { + "i": {"x": 0.833, "y": 0.84}, + "o": {"x": 0.167, "y": 0.174}, + "t": 20.8, + "s": [376.93, 375.608, 0], + "to": [1.047, 0.035, 0], + "ti": [-0.963, -0.007, 0] + }, + { + "i": {"x": 0.833, "y": 0.84}, + "o": {"x": 0.167, "y": 0.174}, + "t": 21.6, + "s": [379.942, 375.666, 0], + "to": [0.963, 0.007, 0], + "ti": [-0.884, 0.016, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.174}, + "t": 22.4, + "s": [382.71, 375.649, 0], + "to": [0.884, -0.016, 0], + "ti": [-0.808, 0.036, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.175}, + "t": 23.2, + "s": [385.245, 375.569, 0], + "to": [0.808, -0.036, 0], + "ti": [-0.736, 0.053, 0] + }, + { + "i": {"x": 0.833, "y": 0.843}, + "o": {"x": 0.167, "y": 0.173}, + "t": 24, + "s": [387.559, 375.434, 0], + "to": [0.736, -0.053, 0], + "ti": [-0.666, 0.068, 0] + }, + { + "i": {"x": 0.833, "y": 0.844}, + "o": {"x": 0.167, "y": 0.173}, + "t": 24.8, + "s": [389.659, 375.251, 0], + "to": [0.666, -0.068, 0], + "ti": [-0.598, 0.082, 0] + }, + { + "i": {"x": 0.833, "y": 0.847}, + "o": {"x": 0.167, "y": 0.172}, + "t": 25.6, + "s": [391.553, 375.025, 0], + "to": [0.598, -0.082, 0], + "ti": [-0.531, 0.096, 0] + }, + { + "i": {"x": 0.833, "y": 0.848}, + "o": {"x": 0.167, "y": 0.169}, + "t": 26.4, + "s": [393.245, 374.757, 0], + "to": [0.531, -0.096, 0], + "ti": [-0.471, 0.106, 0] + }, + { + "i": {"x": 0.833, "y": 0.85}, + "o": {"x": 0.167, "y": 0.166}, + "t": 27.2, + "s": [394.738, 374.451, 0], + "to": [0.471, -0.106, 0], + "ti": [-0.425, 0.111, 0] + }, + { + "i": {"x": 0.833, "y": 0.852}, + "o": {"x": 0.167, "y": 0.162}, + "t": 28, + "s": [396.069, 374.119, 0], + "to": [0.425, -0.111, 0], + "ti": [-0.387, 0.11, 0] + }, + { + "i": {"x": 0.833, "y": 0.855}, + "o": {"x": 0.167, "y": 0.161}, + "t": 28.8, + "s": [397.286, 373.785, 0], + "to": [0.387, -0.11, 0], + "ti": [-0.348, 0.107, 0] + }, + { + "i": {"x": 0.833, "y": 0.857}, + "o": {"x": 0.167, "y": 0.16}, + "t": 29.6, + "s": [398.388, 373.457, 0], + "to": [0.348, -0.107, 0], + "ti": [-0.31, 0.102, 0] + }, + { + "i": {"x": 0.833, "y": 0.86}, + "o": {"x": 0.167, "y": 0.159}, + "t": 30.4, + "s": [399.376, 373.143, 0], + "to": [0.31, -0.102, 0], + "ti": [-0.272, 0.094, 0] + }, + { + "i": {"x": 0.833, "y": 0.863}, + "o": {"x": 0.167, "y": 0.159}, + "t": 31.2, + "s": [400.249, 372.847, 0], + "to": [0.272, -0.094, 0], + "ti": [-0.233, 0.086, 0] + }, + { + "i": {"x": 0.833, "y": 0.867}, + "o": {"x": 0.167, "y": 0.158}, + "t": 32, + "s": [401.007, 372.576, 0], + "to": [0.233, -0.086, 0], + "ti": [-0.195, 0.076, 0] + }, + { + "i": {"x": 0.833, "y": 0.872}, + "o": {"x": 0.167, "y": 0.159}, + "t": 32.8, + "s": [401.649, 372.333, 0], + "to": [0.195, -0.076, 0], + "ti": [-0.156, 0.064, 0] + }, + { + "i": {"x": 0.833, "y": 0.879}, + "o": {"x": 0.167, "y": 0.16}, + "t": 33.6, + "s": [402.175, 372.123, 0], + "to": [0.156, -0.064, 0], + "ti": [-0.118, 0.052, 0] + }, + { + "i": {"x": 0.833, "y": 0.888}, + "o": {"x": 0.167, "y": 0.163}, + "t": 34.4, + "s": [402.586, 371.947, 0], + "to": [0.118, -0.052, 0], + "ti": [-0.079, 0.039, 0] + }, + { + "i": {"x": 0.833, "y": 0.909}, + "o": {"x": 0.167, "y": 0.165}, + "t": 35.2, + "s": [402.881, 371.81, 0], + "to": [0.079, -0.039, 0], + "ti": [-0.041, 0.026, 0] + }, + { + "i": {"x": 0.833, "y": 0.937}, + "o": {"x": 0.167, "y": 0.156}, + "t": 36, + "s": [403.061, 371.711, 0], + "to": [0.041, -0.026, 0], + "ti": [-0.01, 0.014, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36.8, + "s": [403.128, 371.653, 0], + "to": [0.01, -0.014, 0], + "ti": [0.008, 0.004, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 37.6, + "s": [403.122, 371.629, 0], + "to": [-0.008, -0.004, 0], + "ti": [0.019, -0.005, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 38.4, + "s": [403.083, 371.63, 0], + "to": [-0.019, 0.005, 0], + "ti": [0.031, -0.013, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 39.2, + "s": [403.008, 371.658, 0], + "to": [-0.031, 0.013, 0], + "ti": [0.042, -0.022, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40, + "s": [402.898, 371.711, 0], + "to": [-0.042, 0.022, 0], + "ti": [0.053, -0.03, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40.8, + "s": [402.755, 371.79, 0], + "to": [-0.053, 0.03, 0], + "ti": [0.064, -0.038, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 41.6, + "s": [402.579, 371.893, 0], + "to": [-0.064, 0.038, 0], + "ti": [0.074, -0.045, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 42.4, + "s": [402.371, 372.019, 0], + "to": [-0.074, 0.045, 0], + "ti": [0.083, -0.052, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 43.2, + "s": [402.135, 372.165, 0], + "to": [-0.083, 0.052, 0], + "ti": [0.091, -0.057, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44, + "s": [401.874, 372.329, 0], + "to": [-0.091, 0.057, 0], + "ti": [0.097, -0.062, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 44.8, + "s": [401.591, 372.509, 0], + "to": [-0.097, 0.062, 0], + "ti": [0.102, -0.065, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 45.6, + "s": [401.29, 372.7, 0], + "to": [-0.102, 0.065, 0], + "ti": [0.106, -0.067, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 46.4, + "s": [400.977, 372.899, 0], + "to": [-0.106, 0.067, 0], + "ti": [0.053, -0.034, 0] + }, + {"t": 47.2001953125, "s": [400.657, 373.102, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.867, 1.088, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 4.8, + "s": [119.144, 105.827, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.795, 0.877, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.222, 0.043, 0]}, + "t": 5.6, + "s": [108.917, 89.684, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.672, 1.179, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.141, 0.257, 0]}, + "t": 6.4, + "s": [102.765, 122.894, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.908, 0.844, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.112, 0.057, 0]}, + "t": 7.2, + "s": [93.801, 138.844, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.347, 0.934, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.904, 0.179, 0]}, + "t": 8, + "s": [67.511, 88.612, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.047, 0.005, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.096, -0.308, 0]}, + "t": 8.8, + "s": [64.842, 45.024, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.006, 0.93, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.03, 0.091, 0]}, + "t": 9.6, + "s": [46.604, 54.307, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.068, 0.682, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.006, -0.449, 0]}, + "t": 10.4, + "s": [75.236, 155.919, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.917, 0.86, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.037, 0.113, 0]}, + "t": 11.2, + "s": [44.513, 140.008, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [152.315, 0.967, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [270.192, 0.206, 0]}, + "t": 12, + "s": [100.175, 95.172, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.025, 0.944, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.083, -0.056, 0]}, + "t": 12.8, + "s": [100.192, 64.696, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.006, 0.461, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.02, -0.171, 0]}, + "t": 13.6, + "s": [68.993, 82.975, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.991, 1.026, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.006, 0.099, 0]}, + "t": 14.4, + "s": [109.723, 76.983, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.999, 0.913, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.01, 0.02, 0]}, + "t": 15.2, + "s": [65.994, 44.292, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.952, 2.661, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.001, 2.205, 0]}, + "t": 16, + "s": [105.048, 87.05, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.907, 0.908, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.115, 0.079, 0]}, + "t": 16.8, + "s": [66.25, 88.729, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [-0.396, 1.035, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.775, 0.851, 0]}, + "t": 17.6, + "s": [82.513, 53.595, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.013, 0.706, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.089, 0.024, 0]}, + "t": 18.4, + "s": [84.475, 49.774, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.914, 0.563, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.011, 0.116, 0]}, + "t": 19.2, + "s": [115.346, 55.183, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [3.516, 0.971, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [2.432, 0.103, 0]}, + "t": 20, + "s": [79.807, 68.878, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.948, 0.939, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.081, -0.045, 0]}, + "t": 20.8, + "s": [78.547, 127.052, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.885, 1.131, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.137, -0.23, 0]}, + "t": 21.6, + "s": [117.885, 89.313, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.672, 0.895, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.305, 0.051, 0]}, + "t": 22.4, + "s": [103.035, 99.348, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.965, 1.107, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.112, 0.406, 0]}, + "t": 23.2, + "s": [97.463, 73.594, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.366, 0.923, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.06, 0.047, 0]}, + "t": 24, + "s": [81.079, 66.939, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.944, 2.315, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.068, -1.035, 0]}, + "t": 24.8, + "s": [90.595, 82.121, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.794, 1.043, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.173, 0.078, 0]}, + "t": 25.6, + "s": [39.327, 80.989, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.967, 0.857, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.14, 0.028, 0]}, + "t": 26.4, + "s": [55.998, 99.978, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.774, 1.028, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.055, 0.199, 0]}, + "t": 27.2, + "s": [80.566, 71.181, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.053, 0.916, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.132, 0.021, 0]}, + "t": 28, + "s": [65.735, 50.454, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.93, 2.464, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.032, 17.737, 0]}, + "t": 28.8, + "s": [40.364, 78.153, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.919, -0.053, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.444, 0.079, 0]}, + "t": 29.6, + "s": [81.902, 78.284, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [8.689, 0.931, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-2.407, 0.091, 0]}, + "t": 30.4, + "s": [75.338, 75.857, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.962, 0.423, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.082, -0.405, 0]}, + "t": 31.2, + "s": [75.557, 47.651, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.151, 1.036, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.069, 0.097, 0]}, + "t": 32, + "s": [55.074, 52.465, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.832, 0.956, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.054, 0.025, 0]}, + "t": 32.8, + "s": [66.306, 80.999, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.912, 0.908, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.165, -0.095, 0]}, + "t": 33.6, + "s": [34.754, 40.269, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.421, 1.175, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [1.584, 0.921, 0]}, + "t": 34.4, + "s": [2.594, 59.324, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.174, -0.146, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.07, 0.056, 0]}, + "t": 35.2, + "s": [0.808, 61.219, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.039, 0.948, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.056, 0.09, 0]}, + "t": 36, + "s": [11.618, 55.345, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.955, 0.744, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.027, -0.14, 0]}, + "t": 36.8, + "s": [-21.777, -19.555, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.083, 0.932, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.096, 0.123, 0]}, + "t": 37.6, + "s": [27.422, 8.427, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.896, 0.349, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.042, -0.359, 0]}, + "t": 38.4, + "s": [4.597, 66.513, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.087, 0.933, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.425, 0.096, 0]}, + "t": 39.2, + "s": [50.12, 55.561, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.942, 0.784, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.043, -0.354, 0]}, + "t": 40, + "s": [61.217, -19.054, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.717, 1.007, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.186, 0.136, 0]}, + "t": 40.8, + "s": [38.47, -4.836, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.956, 1.072, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.075, 0.006, 0]}, + "t": 41.6, + "s": [45.499, 17.824, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.926, 0.911, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.092, 0.039, 0]}, + "t": 42.4, + "s": [-22.007, -6.623, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.362, 0.919, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.679, 1.237, 0]}, + "t": 43.2, + "s": [10.024, 38.847, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.873, -34.643, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.068, -2.84, 0]}, + "t": 44, + "s": [6.522, 42.131, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.708, 0.925, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.243, 0.084, 0]}, + "t": 44.8, + "s": [25.242, 42.037, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.976, -0.202, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.117, -0.792, 0]}, + "t": 45.6, + "s": [35.027, 2.106, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.034, 0.09, 0]}, + "t": 46.4, + "s": [59.478, 5.911, 100] + }, + {"t": 47.2001953125, "s": [42.168, 56.973, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": {"a": 0, "k": [10, 10], "ix": 2}, + "p": {"a": 0, "k": [0, 0], "ix": 3}, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [1, 0.101960785687, 0.380392163992, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Ellipse 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 4.7998046875, + "op": 48, + "st": 4.7998046875, + "bm": 0 + }, + { + "ddd": 0, + "ind": 51, + "ty": 4, + "nm": "Shape Layer 1", + "sr": 1, + "ks": { + "o": { + "a": 1, + "k": [ + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 2.4, + "s": [0] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 6.4, + "s": [100] + }, + { + "i": {"x": [0.667], "y": [1]}, + "o": {"x": [0.333], "y": [0]}, + "t": 24, + "s": [100] + }, + {"t": 36.7998046875, "s": [0]} + ], + "ix": 11 + }, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.833, "y": 0.631}, + "o": {"x": 0.167, "y": 0.165}, + "t": 2.4, + "s": [273.808, 259.665, 0], + "to": [0.527, -0.068, 0], + "ti": [-2.371, 0.302, 0] + }, + { + "i": {"x": 0.833, "y": 0.771}, + "o": {"x": 0.167, "y": 0.105}, + "t": 3.2, + "s": [276.968, 259.259, 0], + "to": [2.371, -0.302, 0], + "ti": [-5.103, 0.961, 0] + }, + { + "i": {"x": 0.833, "y": 0.832}, + "o": {"x": 0.167, "y": 0.124}, + "t": 4, + "s": [288.032, 257.854, 0], + "to": [5.103, -0.961, 0], + "ti": [-6.631, 2.225, 0] + }, + { + "i": {"x": 0.833, "y": 0.871}, + "o": {"x": 0.167, "y": 0.132}, + "t": 4.8, + "s": [307.589, 253.495, 0], + "to": [6.631, -2.225, 0], + "ti": [-5.809, 3.598, 0] + }, + { + "i": {"x": 0.833, "y": 0.912}, + "o": {"x": 0.167, "y": 0.102}, + "t": 5.6, + "s": [327.818, 244.501, 0], + "to": [5.809, -3.598, 0], + "ti": [-3.886, 4.355, 0] + }, + { + "i": {"x": 0.833, "y": 0.956}, + "o": {"x": 0.167, "y": 0.053}, + "t": 6.4, + "s": [342.441, 231.905, 0], + "to": [3.886, -4.355, 0], + "ti": [-2.267, 4.355, 0] + }, + { + "i": {"x": 0.833, "y": 0.98}, + "o": {"x": 0.167, "y": 0.024}, + "t": 7.2, + "s": [351.136, 218.373, 0], + "to": [2.267, -4.355, 0], + "ti": [-1.31, 3.958, 0] + }, + { + "i": {"x": 0.833, "y": 0.99}, + "o": {"x": 0.167, "y": 0.012}, + "t": 8, + "s": [356.042, 205.774, 0], + "to": [1.31, -3.958, 0], + "ti": [-0.831, 3.49, 0] + }, + { + "i": {"x": 0.833, "y": 0.993}, + "o": {"x": 0.167, "y": 0.008}, + "t": 8.8, + "s": [358.996, 194.624, 0], + "to": [0.831, -3.49, 0], + "ti": [-0.612, 3.067, 0] + }, + { + "i": {"x": 0.833, "y": 0.995}, + "o": {"x": 0.167, "y": 0.006}, + "t": 9.6, + "s": [361.029, 184.836, 0], + "to": [0.612, -3.067, 0], + "ti": [-0.528, 2.704, 0] + }, + { + "i": {"x": 0.833, "y": 0.994}, + "o": {"x": 0.167, "y": 0.007}, + "t": 10.4, + "s": [362.67, 176.222, 0], + "to": [0.528, -2.704, 0], + "ti": [-0.514, 2.391, 0] + }, + { + "i": {"x": 0.833, "y": 0.992}, + "o": {"x": 0.167, "y": 0.009}, + "t": 11.2, + "s": [364.195, 168.613, 0], + "to": [0.514, -2.391, 0], + "ti": [-0.538, 2.117, 0] + }, + { + "i": {"x": 0.833, "y": 0.988}, + "o": {"x": 0.167, "y": 0.013}, + "t": 12, + "s": [365.753, 161.877, 0], + "to": [0.538, -2.117, 0], + "ti": [-0.583, 1.874, 0] + }, + { + "i": {"x": 0.833, "y": 0.983}, + "o": {"x": 0.167, "y": 0.019}, + "t": 12.8, + "s": [367.425, 155.911, 0], + "to": [0.583, -1.874, 0], + "ti": [-0.636, 1.65, 0] + }, + { + "i": {"x": 0.833, "y": 0.976}, + "o": {"x": 0.167, "y": 0.027}, + "t": 13.6, + "s": [369.252, 150.634, 0], + "to": [0.636, -1.65, 0], + "ti": [-0.685, 1.438, 0] + }, + { + "i": {"x": 0.833, "y": 0.965}, + "o": {"x": 0.167, "y": 0.038}, + "t": 14.4, + "s": [371.238, 146.01, 0], + "to": [0.685, -1.438, 0], + "ti": [-0.735, 1.242, 0] + }, + { + "i": {"x": 0.833, "y": 0.951}, + "o": {"x": 0.167, "y": 0.054}, + "t": 15.2, + "s": [373.362, 142.007, 0], + "to": [0.735, -1.242, 0], + "ti": [-0.783, 1.066, 0] + }, + { + "i": {"x": 0.833, "y": 0.936}, + "o": {"x": 0.167, "y": 0.07}, + "t": 16, + "s": [375.646, 138.557, 0], + "to": [0.783, -1.066, 0], + "ti": [-0.813, 0.905, 0] + }, + { + "i": {"x": 0.833, "y": 0.92}, + "o": {"x": 0.167, "y": 0.087}, + "t": 16.8, + "s": [378.057, 135.612, 0], + "to": [0.813, -0.905, 0], + "ti": [-0.823, 0.759, 0] + }, + { + "i": {"x": 0.833, "y": 0.907}, + "o": {"x": 0.167, "y": 0.102}, + "t": 17.6, + "s": [380.527, 133.13, 0], + "to": [0.823, -0.759, 0], + "ti": [-0.814, 0.633, 0] + }, + { + "i": {"x": 0.833, "y": 0.894}, + "o": {"x": 0.167, "y": 0.116}, + "t": 18.4, + "s": [382.995, 131.056, 0], + "to": [0.814, -0.633, 0], + "ti": [-0.791, 0.525, 0] + }, + { + "i": {"x": 0.833, "y": 0.884}, + "o": {"x": 0.167, "y": 0.126}, + "t": 19.2, + "s": [385.412, 129.334, 0], + "to": [0.791, -0.525, 0], + "ti": [-0.756, 0.434, 0] + }, + { + "i": {"x": 0.833, "y": 0.876}, + "o": {"x": 0.167, "y": 0.136}, + "t": 20, + "s": [387.738, 127.909, 0], + "to": [0.756, -0.434, 0], + "ti": [-0.712, 0.358, 0] + }, + { + "i": {"x": 0.833, "y": 0.87}, + "o": {"x": 0.167, "y": 0.143}, + "t": 20.8, + "s": [389.945, 126.733, 0], + "to": [0.712, -0.358, 0], + "ti": [-0.664, 0.295, 0] + }, + { + "i": {"x": 0.833, "y": 0.864}, + "o": {"x": 0.167, "y": 0.15}, + "t": 21.6, + "s": [392.013, 125.763, 0], + "to": [0.664, -0.295, 0], + "ti": [-0.613, 0.243, 0] + }, + { + "i": {"x": 0.833, "y": 0.861}, + "o": {"x": 0.167, "y": 0.154}, + "t": 22.4, + "s": [393.931, 124.963, 0], + "to": [0.613, -0.243, 0], + "ti": [-0.561, 0.201, 0] + }, + { + "i": {"x": 0.833, "y": 0.858}, + "o": {"x": 0.167, "y": 0.158}, + "t": 23.2, + "s": [395.694, 124.303, 0], + "to": [0.561, -0.201, 0], + "ti": [-0.508, 0.165, 0] + }, + { + "i": {"x": 0.833, "y": 0.857}, + "o": {"x": 0.167, "y": 0.161}, + "t": 24, + "s": [397.298, 123.76, 0], + "to": [0.508, -0.165, 0], + "ti": [-0.456, 0.135, 0] + }, + { + "i": {"x": 0.833, "y": 0.856}, + "o": {"x": 0.167, "y": 0.164}, + "t": 24.8, + "s": [398.744, 123.313, 0], + "to": [0.456, -0.135, 0], + "ti": [-0.404, 0.11, 0] + }, + { + "i": {"x": 0.833, "y": 0.855}, + "o": {"x": 0.167, "y": 0.168}, + "t": 25.6, + "s": [400.032, 122.948, 0], + "to": [0.404, -0.11, 0], + "ti": [-0.352, 0.089, 0] + }, + { + "i": {"x": 0.833, "y": 0.854}, + "o": {"x": 0.167, "y": 0.17}, + "t": 26.4, + "s": [401.165, 122.652, 0], + "to": [0.352, -0.089, 0], + "ti": [-0.302, 0.071, 0] + }, + { + "i": {"x": 0.833, "y": 0.856}, + "o": {"x": 0.167, "y": 0.174}, + "t": 27.2, + "s": [402.144, 122.415, 0], + "to": [0.302, -0.071, 0], + "ti": [-0.253, 0.055, 0] + }, + { + "i": {"x": 0.833, "y": 0.856}, + "o": {"x": 0.167, "y": 0.176}, + "t": 28, + "s": [402.975, 122.228, 0], + "to": [0.253, -0.055, 0], + "ti": [-0.207, 0.041, 0] + }, + { + "i": {"x": 0.833, "y": 0.859}, + "o": {"x": 0.167, "y": 0.182}, + "t": 28.8, + "s": [403.664, 122.085, 0], + "to": [0.207, -0.041, 0], + "ti": [-0.163, 0.029, 0] + }, + { + "i": {"x": 0.833, "y": 0.863}, + "o": {"x": 0.167, "y": 0.188}, + "t": 29.6, + "s": [404.217, 121.981, 0], + "to": [0.163, -0.029, 0], + "ti": [-0.119, 0.018, 0] + }, + { + "i": {"x": 0.833, "y": 0.87}, + "o": {"x": 0.167, "y": 0.199}, + "t": 30.4, + "s": [404.639, 121.911, 0], + "to": [0.119, -0.018, 0], + "ti": [-0.078, 0.008, 0] + }, + { + "i": {"x": 0.833, "y": 0.887}, + "o": {"x": 0.167, "y": 0.224}, + "t": 31.2, + "s": [404.934, 121.872, 0], + "to": [0.078, -0.008, 0], + "ti": [-0.038, -0.001, 0] + }, + { + "i": {"x": 0.833, "y": 0.854}, + "o": {"x": 0.167, "y": 0.258}, + "t": 32, + "s": [405.107, 121.862, 0], + "to": [0.038, 0.001, 0], + "ti": [0, -0.01, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 32.8, + "s": [405.163, 121.879, 0], + "to": [0, 0.01, 0], + "ti": [0.036, -0.018, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 33.6, + "s": [405.107, 121.921, 0], + "to": [-0.036, 0.018, 0], + "ti": [0.064, -0.025, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 34.4, + "s": [404.945, 121.988, 0], + "to": [-0.064, 0.025, 0], + "ti": [0.075, -0.028, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 35.2, + "s": [404.725, 122.069, 0], + "to": [-0.075, 0.028, 0], + "ti": [0.078, -0.03, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36, + "s": [404.495, 122.157, 0], + "to": [-0.078, 0.03, 0], + "ti": [0.079, -0.032, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 36.8, + "s": [404.258, 122.252, 0], + "to": [-0.079, 0.032, 0], + "ti": [0.08, -0.034, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 37.6, + "s": [404.019, 122.352, 0], + "to": [-0.08, 0.034, 0], + "ti": [0.078, -0.036, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 38.4, + "s": [403.781, 122.458, 0], + "to": [-0.078, 0.036, 0], + "ti": [0.065, -0.038, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 39.2, + "s": [403.552, 122.57, 0], + "to": [-0.065, 0.038, 0], + "ti": [0.039, -0.038, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40, + "s": [403.392, 122.685, 0], + "to": [-0.039, 0.038, 0], + "ti": [0.013, -0.038, 0] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 40.8, + "s": [403.315, 122.8, 0], + "to": [-0.013, 0.038, 0], + "ti": [-0.011, -0.037, 0] + }, + { + "i": {"x": 0.833, "y": 0.95}, + "o": {"x": 0.167, "y": 0.041}, + "t": 41.6, + "s": [403.314, 122.914, 0], + "to": [0.011, 0.037, 0], + "ti": [-0.033, -0.036, 0] + }, + { + "i": {"x": 0.833, "y": 0.889}, + "o": {"x": 0.167, "y": 0.088}, + "t": 42.4, + "s": [403.381, 123.025, 0], + "to": [0.033, 0.036, 0], + "ti": [-0.052, -0.035, 0] + }, + { + "i": {"x": 0.833, "y": 0.86}, + "o": {"x": 0.167, "y": 0.114}, + "t": 43.2, + "s": [403.509, 123.131, 0], + "to": [0.052, 0.035, 0], + "ti": [-0.069, -0.033, 0] + }, + { + "i": {"x": 0.833, "y": 0.848}, + "o": {"x": 0.167, "y": 0.13}, + "t": 44, + "s": [403.692, 123.233, 0], + "to": [0.069, 0.033, 0], + "ti": [-0.084, -0.031, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.141}, + "t": 44.8, + "s": [403.923, 123.328, 0], + "to": [0.084, 0.031, 0], + "ti": [-0.096, -0.028, 0] + }, + { + "i": {"x": 0.833, "y": 0.838}, + "o": {"x": 0.167, "y": 0.149}, + "t": 45.6, + "s": [404.195, 123.417, 0], + "to": [0.096, 0.028, 0], + "ti": [-0.107, -0.025, 0] + }, + { + "i": {"x": 0.833, "y": 0.841}, + "o": {"x": 0.167, "y": 0.152}, + "t": 46.4, + "s": [404.501, 123.497, 0], + "to": [0.107, 0.025, 0], + "ti": [-0.056, -0.012, 0] + }, + {"t": 47.2001953125, "s": [404.836, 123.569, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.013, 0.991, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.167, 0.167, 0]}, + "t": 2.4, + "s": [94.174, 88.68, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.854, 0.871, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.011, -0.01, 0]}, + "t": 3.2, + "s": [62.657, 103.74, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1, 0.874, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.195, 0.236, 0]}, + "t": 4, + "s": [98.913, 90.256, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.962, 1.852, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0, 0.247, 0]}, + "t": 4.8, + "s": [126.059, 82.91, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.12, 0.944, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.071, 0.076, 0]}, + "t": 5.6, + "s": [99.016, 79.175, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.877, 0.719, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.049, -0.167, 0]}, + "t": 6.4, + "s": [113.623, 121.094, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.808, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.258, 0.118, 0]}, + "t": 7.2, + "s": [77.907, 107.132, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.024, 1.089, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.147, 0.166, 0]}, + "t": 8, + "s": [60.895, 73.957, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.02, 0.864, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.019, 0.043, 0]}, + "t": 8.8, + "s": [38.746, 40.656, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.997, 1.04, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.016, 0.216, 0]}, + "t": 9.6, + "s": [67.397, 109.363, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.787, 0.879, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.003, 0.027, 0]}, + "t": 10.4, + "s": [31.725, 152.383, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.983, 0.979, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.137, 0.27, 0]}, + "t": 11.2, + "s": [66.258, 88.662, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.996, 0.751, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.021, -0.027, 0]}, + "t": 12, + "s": [119.803, 60.228, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.949, 1.058, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.004, 0.125, 0]}, + "t": 12.8, + "s": [76.922, 81.625, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.975, 0.91, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.135, 0.034, 0]}, + "t": 13.6, + "s": [117.696, 124.097, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.215, 1.712, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.036, 1.154, 0]}, + "t": 14.4, + "s": [102.098, 51.832, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.928, 0.975, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.06, 0.075, 0]}, + "t": 15.2, + "s": [113.025, 46.206, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.706, 0.89, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.543, -0.036, 0]}, + "t": 16, + "s": [73.843, 99.907, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.753, 0.976, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.116, 0.341, 0]}, + "t": 16.8, + "s": [79.054, 62.467, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.064, 0.498, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.126, -0.035, 0]}, + "t": 17.6, + "s": [92.238, 50.379, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.883, 0.885, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.036, 0.1, 0]}, + "t": 18.4, + "s": [118.149, 58.916, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.141, 0.987, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.287, 0.3, 0]}, + "t": 19.2, + "s": [72.379, 101.804, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.893, 0.826, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.052, -0.015, 0]}, + "t": 20, + "s": [53.668, 118.311, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.925, 1.044, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.378, 0.16, 0]}, + "t": 20.8, + "s": [103.965, 104.335, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.058, 1.06, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.757, 0.029, 0]}, + "t": 21.6, + "s": [118.191, 89.162, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.036, 0.944, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.091, 0.035, 0]}, + "t": 22.4, + "s": [116.779, 112.396, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.158, 1.215, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.025, -0.166, 0]}, + "t": 23.2, + "s": [102.243, 72.439, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.897, 0.987, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.055, 0.06, 0]}, + "t": 24, + "s": [123.077, 85.771, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.064, 0.868, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.435, -0.015, 0]}, + "t": 24.8, + "s": [62.652, 37.969, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.949, 1.055, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.036, 0.226, 0]}, + "t": 25.6, + "s": [48.316, 78.523, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.545, 0.919, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.131, 0.033, 0]}, + "t": 26.4, + "s": [73.718, 102.173, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.979, -0.741, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.102, -2.64, 0]}, + "t": 27.2, + "s": [63.843, 62.973, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.921, 1.048, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.028, 0.088, 0]}, + "t": 28, + "s": [19.791, 64.173, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.758, 0.937, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-1.621, 0.03, 0]}, + "t": 28.8, + "s": [52.853, 88.034, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.306, 0.9, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.127, -0.264, 0]}, + "t": 29.6, + "s": [51.236, 50.431, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.889, -0.258, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.065, 0.495, 0]}, + "t": 30.4, + "s": [48.161, 59.44, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.538, 1.041, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.334, 0.089, 0]}, + "t": 31.2, + "s": [62.531, 61.263, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.759, 0.854, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.072, 0.027, 0]}, + "t": 32, + "s": [67.316, 86.954, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.954, 1.042, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.127, 0.194, 0]}, + "t": 32.8, + "s": [31.655, 48.638, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.875, 0.994, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.1, 0.028, 0]}, + "t": 33.6, + "s": [-35.843, 19.827, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.076, 0.824, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.249, -0.007, 0]}, + "t": 34.4, + "s": [-5.221, 63.199, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.027, 0.939, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.04, 0.158, 0]}, + "t": 35.2, + "s": [10.17, 23.011, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.934, 0.602, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.02, -0.226, 0]}, + "t": 36, + "s": [-19.321, -21.801, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.313, 0.928, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.321, 0.105, 0]}, + "t": 36.8, + "s": [19.702, -9.718, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.894, 0.502, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.066, -0.534, 0]}, + "t": 37.6, + "s": [11.661, 35.883, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.021, 0.956, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.392, 0.1, 0]}, + "t": 38.4, + "s": [49.934, 29.715, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.685, 0.902, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.016, -0.095, 0]}, + "t": 39.2, + "s": [60.278, -1.013, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.849, 1.927, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.113, 0.549, 0]}, + "t": 40, + "s": [47.382, 13.308, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.934, 1.073, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.187, 0.076, 0]}, + "t": 40.8, + "s": [11.559, 15.87, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.349, 0.905, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.311, 0.039, 0]}, + "t": 41.6, + "s": [-17.364, -15.186, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.953, 1.167, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.096, 0.662, 0]}, + "t": 42.4, + "s": [-11.255, 42.917, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.05, 0.864, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [-0.107, 0.056, 0]}, + "t": 43.2, + "s": [30.321, 51.283, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.897, 1.071, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.031, 0.214, 0]}, + "t": 44, + "s": [12.149, 26.161, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [1.244, 0.929, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.44, 0.038, 0]}, + "t": 44.8, + "s": [41.324, 10.186, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.878, 0.901, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.062, -0.468, 0]}, + "t": 45.6, + "s": [48.144, 39.687, 100] + }, + { + "i": {"x": [0.833, 0.833, 0.833], "y": [0.833, 0.833, 1]}, + "o": {"x": [0.167, 0.167, 0.167], "y": [0.262, 0.526, 0]}, + "t": 46.4, + "s": [21.344, 35.23, 100] + }, + {"t": 47.2001953125, "s": [8.869, 34.392, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": {"a": 0, "k": [10, 10], "ix": 2}, + "p": {"a": 0, "k": [0, 0], "ix": 3}, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": {"a": 0, "k": [1, 0.101960785687, 0.380392163992, 1], "ix": 4}, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [0, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Ellipse 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 2.400390625, + "op": 48, + "st": 2.400390625, + "bm": 0 + } + ] + } + ], + "layers": [ + { + "ddd": 0, + "ind": 1, + "ty": 4, + "nm": "Shape Layer 1", + "sr": 1, + "ks": { + "o": {"a": 0, "k": 100, "ix": 11}, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": {"a": 0, "k": [36, 36, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.181, 0.181, 0.667], "y": [1, 1, 1]}, + "o": {"x": [0.052, 0.052, 0.333], "y": [0, 0, 0]}, + "t": 78, + "s": [0, 0, 100] + }, + {"t": 89, "s": [37.5, 37.5, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "d": 1, + "ty": "el", + "s": {"a": 0, "k": [600, 600], "ix": 2}, + "p": {"a": 0, "k": [0, 0], "ix": 3}, + "nm": "Ellipse Path 1", + "mn": "ADBE Vector Shape - Ellipse", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [0.964705884457, 0.796078443527, 0.721568644047, 1], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [-4, 0], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Ellipse 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 96, + "op": 96, + "st": -18, + "bm": 0 + }, + { + "ddd": 0, + "ind": 2, + "ty": 0, + "nm": "HDFC Success", + "refId": "comp_0", + "sr": 1, + "ks": { + "o": {"a": 0, "k": 100, "ix": 11}, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": {"a": 0, "k": [36, 36, 0], "ix": 2}, + "a": {"a": 0, "k": [406, 406, 0], "ix": 1}, + "s": {"a": 0, "k": [10, 10, 100], "ix": 6} + }, + "ao": 0, + "w": 812, + "h": 812, + "ip": 0, + "op": 100, + "st": 0, + "bm": 0 + } + ], + "markers": [] +} diff --git a/src/core/ui/animation/Pera_Loader_Colorful.json b/src/core/ui/animation/Pera_Loader_Colorful.json new file mode 100644 index 0000000..890b9ca --- /dev/null +++ b/src/core/ui/animation/Pera_Loader_Colorful.json @@ -0,0 +1,1862 @@ +{ + "v": "4.8.0", + "meta": {"g": "LottieFiles AE 3.0.0", "a": "", "k": "", "d": "", "tc": ""}, + "fr": 30, + "ip": 0, + "op": 66, + "w": 240, + "h": 240, + "nm": "loader ", + "ddd": 0, + "assets": [], + "layers": [ + { + "ddd": 0, + "ind": 1, + "ty": 3, + "nm": "Null 4", + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": { + "a": 1, + "k": [ + { + "i": {"x": [0.24], "y": [0.856]}, + "o": {"x": [0.76], "y": [0.187]}, + "t": 0, + "s": [0] + }, + {"t": 66, "s": [360]} + ], + "ix": 10 + }, + "p": {"a": 0, "k": [120, 120, 0], "ix": 2}, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 69, + "st": 1, + "bm": 0 + }, + { + "ddd": 0, + "ind": 2, + "ty": 3, + "nm": "Null 10", + "parent": 1, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.68, "y": 0.636}, + "o": {"x": 0.4, "y": 0}, + "t": 0, + "s": [89.5, 28.5, 0], + "to": [9.801, 1.891, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.32, "y": 0.408}, + "t": 30, + "s": [148.305, 39.844, 0], + "to": [0, 0, 0], + "ti": [9.801, 1.891, 0] + }, + {"t": 66, "s": [89.5, 28.5, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 3, + "ty": 4, + "nm": "1", + "parent": 2, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 100, "ix": 11}, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.945, "y": 0}, + "o": {"x": 0.4, "y": 0}, + "t": 1, + "s": [52.027, 49.266, 0], + "to": [-0.833, -1.667, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.044, "y": 1}, + "t": 30, + "s": [47.027, 39.266, 0], + "to": [0, 0, 0], + "ti": [-0.833, -1.667, 0] + }, + {"t": 66, "s": [52.027, 49.266, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [6.506, 6.485, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.68, 0.68, 0.68], "y": [0.394, 0.394, 1]}, + "o": {"x": [0.4, 0.4, 0.4], "y": [0, 0, 0]}, + "t": 1, + "s": [400, 400, 100] + }, + { + "i": {"x": [0.6, 0.6, 0.6], "y": [1, 1, 1]}, + "o": {"x": [0.32, 0.32, 0.32], "y": [0.752, 0.752, 0]}, + "t": 30, + "s": [250, 250, 100] + }, + {"t": 66, "s": [400, 400, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "mm", + "mm": 4, + "nm": "Merge Paths 1", + "mn": "ADBE Vector Filter - Merge", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 1, + "k": [ + { + "i": {"x": [0.833], "y": [0.833]}, + "o": {"x": [0.167], "y": [0.167]}, + "t": 23, + "s": [1, 1, 1, 1] + }, + { + "i": {"x": [0.833], "y": [0.833]}, + "o": {"x": [0.167], "y": [0.167]}, + "t": 25, + "s": [1, 0.933333337307, 0.333333343267, 1] + }, + { + "i": {"x": [0.833], "y": [0.833]}, + "o": {"x": [0.167], "y": [0.167]}, + "t": 34, + "s": [1, 0.933333337307, 0.333333343267, 1] + }, + {"t": 36, "s": [1, 1, 1, 1]} + ], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [6.506, 6.485], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Group 1", + "np": 3, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 68, + "st": 1, + "bm": 0 + }, + { + "ddd": 0, + "ind": 4, + "ty": 3, + "nm": "Null 4", + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": { + "a": 1, + "k": [ + { + "i": {"x": [0.24], "y": [0.86]}, + "o": {"x": [0.76], "y": [0.19]}, + "t": 0, + "s": [0] + }, + {"t": 66, "s": [360]} + ], + "ix": 10 + }, + "p": {"a": 0, "k": [120, 120, 0], "ix": 2}, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 5, + "ty": 3, + "nm": "Null 5", + "parent": 4, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": {"a": 0, "k": -58.013, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.68, "y": 0.521}, + "o": {"x": 0.4, "y": 0}, + "t": 0, + "s": [51.5, 2.5, 0], + "to": [6.899, -6.585, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.32, "y": 0.424}, + "t": 35, + "s": [92.896, -37.007, 0], + "to": [0, 0, 0], + "ti": [6.899, -6.585, 0] + }, + {"t": 66, "s": [51.5, 2.5, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 6, + "ty": 4, + "nm": "7", + "parent": 5, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 100, "ix": 11}, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.68, "y": 0.014}, + "o": {"x": 0.4, "y": 0}, + "t": 3, + "s": [51.152, 48.266, 0], + "to": [-3.818, -3.834, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.205, "y": 1}, + "t": 27, + "s": [28.244, 25.262, 0], + "to": [0, 0, 0], + "ti": [-3.818, -3.834, 0] + }, + {"t": 65, "s": [51.152, 48.266, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [6.506, 6.485, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.68, 0.68, 0.68], "y": [0.398, 0.398, 1]}, + "o": {"x": [0.4, 0.4, 0.4], "y": [0, 0, 0]}, + "t": 3, + "s": [400, 400, 100] + }, + { + "i": {"x": [0.6, 0.6, 0.6], "y": [1, 1, 1]}, + "o": {"x": [0.32, 0.32, 0.32], "y": [0.953, 0.953, 0]}, + "t": 27, + "s": [250, 250, 100] + }, + {"t": 65, "s": [400, 400, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 1, + "k": [ + { + "i": {"x": 0.68, "y": 0.06}, + "o": {"x": 0.4, "y": 0}, + "t": 3, + "s": [ + { + "i": [ + [0.564, 0.706], + [1.913, -1.93], + [-0.74, -0.886], + [-2.516, 2.423] + ], + "o": [ + [-0.6, -0.769], + [-2.408, 2.431], + [0.734, 0.88], + [1.959, -1.887] + ], + "v": [ + [4.188, -4.173], + [-1.389, -1.624], + [-4.4, 4.321], + [1.496, 1.451] + ], + "c": true + } + ] + }, + { + "i": {"x": 0.833, "y": 0.833}, + "o": {"x": 0.167, "y": 0.167}, + "t": 26, + "s": [ + { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + } + ] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.32, "y": 0.94}, + "t": 34, + "s": [ + { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + } + ] + }, + { + "t": 65, + "s": [ + { + "i": [ + [0.564, 0.706], + [1.913, -1.93], + [-0.74, -0.886], + [-2.516, 2.423] + ], + "o": [ + [-0.6, -0.769], + [-2.408, 2.431], + [0.734, 0.88], + [1.959, -1.887] + ], + "v": [ + [4.188, -4.173], + [-1.389, -1.624], + [-4.4, 4.321], + [1.496, 1.451] + ], + "c": true + } + ] + } + ], + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "mm", + "mm": 4, + "nm": "Merge Paths 1", + "mn": "ADBE Vector Filter - Merge", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 1, + "k": [ + { + "i": {"x": [0.833], "y": [0.833]}, + "o": {"x": [0.167], "y": [0.167]}, + "t": 38, + "s": [1, 1, 1, 1] + }, + { + "i": {"x": [0.833], "y": [0.833]}, + "o": {"x": [0.167], "y": [0.167]}, + "t": 40, + "s": [1, 0.933333337307, 0.333333343267, 1] + }, + { + "i": {"x": [0.833], "y": [0.833]}, + "o": {"x": [0.167], "y": [0.167]}, + "t": 49, + "s": [1, 0.933333337307, 0.333333343267, 1] + }, + {"t": 53, "s": [1, 1, 1, 1]} + ], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [6.506, 6.485], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Group 1", + "np": 3, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 68, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 7, + "ty": 3, + "nm": "Null 4", + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": { + "a": 1, + "k": [ + { + "i": {"x": [0.24], "y": [0.86]}, + "o": {"x": [0.76], "y": [0.19]}, + "t": 0, + "s": [0] + }, + {"t": 66, "s": [360]} + ], + "ix": 10 + }, + "p": {"a": 0, "k": [120, 120, 0], "ix": 2}, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 5, + "bm": 0 + }, + { + "ddd": 0, + "ind": 8, + "ty": 3, + "nm": "Null 9", + "parent": 7, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": {"a": 0, "k": 61.855, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.68, "y": 0.37}, + "o": {"x": 0.4, "y": 0}, + "t": 0, + "s": [9.25, 26, 0], + "to": [0, 0, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.32, "y": 0.519}, + "t": 34, + "s": [-26.339, -7.312, 0], + "to": [0, 0, 0], + "ti": [0, 0, 0] + }, + {"t": 66, "s": [9.25, 26, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 9, + "ty": 4, + "nm": "6", + "parent": 8, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 100, "ix": 11}, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.693, "y": 0}, + "o": {"x": 0.4, "y": 0}, + "t": 5, + "s": [48.277, 50.891, 0], + "to": [-1.015, -7.059, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.219, "y": 1}, + "t": 30, + "s": [42.185, 8.534, 0], + "to": [0, 0, 0], + "ti": [-1.015, -7.059, 0] + }, + {"t": 65, "s": [48.277, 50.891, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [6.506, 6.485, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.68, 0.68, 0.68], "y": [0.217, 0.217, 1]}, + "o": {"x": [0.4, 0.4, 0.4], "y": [0, 0, 0]}, + "t": 5, + "s": [400, 400, 100] + }, + { + "i": {"x": [0.6, 0.6, 0.6], "y": [1, 1, 1]}, + "o": {"x": [0.32, 0.32, 0.32], "y": [1.097, 1.097, 0]}, + "t": 30, + "s": [250, 250, 100] + }, + {"t": 65, "s": [400, 400, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 1, + "k": [ + { + "i": {"x": 0.74, "y": 0}, + "o": {"x": 0.52, "y": 0}, + "t": 5, + "s": [ + { + "i": [ + [0.564, 0.706], + [1.913, -1.93], + [-0.74, -0.886], + [-2.516, 2.423] + ], + "o": [ + [-0.6, -0.769], + [-2.408, 2.431], + [0.734, 0.88], + [1.959, -1.887] + ], + "v": [ + [4.188, -4.173], + [-1.389, -1.624], + [-4.4, 4.321], + [1.496, 1.451] + ], + "c": true + } + ] + }, + { + "i": {"x": 0.833, "y": 0.833}, + "o": {"x": 0.167, "y": 0.167}, + "t": 26, + "s": [ + { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + } + ] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.32, "y": 0.94}, + "t": 34, + "s": [ + { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + } + ] + }, + { + "t": 65, + "s": [ + { + "i": [ + [0.564, 0.706], + [1.913, -1.93], + [-0.74, -0.886], + [-2.516, 2.423] + ], + "o": [ + [-0.6, -0.769], + [-2.408, 2.431], + [0.734, 0.88], + [1.959, -1.887] + ], + "v": [ + [4.188, -4.173], + [-1.389, -1.624], + [-4.4, 4.321], + [1.496, 1.451] + ], + "c": true + } + ] + } + ], + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "mm", + "mm": 4, + "nm": "Merge Paths 1", + "mn": "ADBE Vector Filter - Merge", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 1, + "k": [ + { + "i": {"x": [0.833], "y": [0.833]}, + "o": {"x": [0.167], "y": [0.167]}, + "t": 35, + "s": [1, 1, 1, 1] + }, + { + "i": {"x": [0.833], "y": [0.833]}, + "o": {"x": [0.167], "y": [0.167]}, + "t": 37, + "s": [1, 0.933333337307, 0.333333343267, 1] + }, + { + "i": {"x": [0.833], "y": [0.833]}, + "o": {"x": [0.167], "y": [0.167]}, + "t": 46, + "s": [1, 0.933333337307, 0.333333343267, 1] + }, + {"t": 48, "s": [1, 1, 1, 1]} + ], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [6.506, 6.485], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Group 1", + "np": 3, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 68, + "st": 5, + "bm": 0 + }, + { + "ddd": 0, + "ind": 10, + "ty": 3, + "nm": "Null 4", + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": { + "a": 1, + "k": [ + { + "i": {"x": [0.24], "y": [0.86]}, + "o": {"x": [0.76], "y": [0.19]}, + "t": 0, + "s": [0] + }, + {"t": 66, "s": [360]} + ], + "ix": 10 + }, + "p": {"a": 0, "k": [120, 120, 0], "ix": 2}, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 4, + "bm": 0 + }, + { + "ddd": 0, + "ind": 11, + "ty": 3, + "nm": "Null 8", + "parent": 10, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.68, "y": 0.248}, + "o": {"x": 0.4, "y": 0}, + "t": 0, + "s": [6.25, 73.5, 0], + "to": [0, 0, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.32, "y": 0.575}, + "t": 33, + "s": [-36.208, 68.618, 0], + "to": [0, 0, 0], + "ti": [0, 0, 0] + }, + {"t": 66, "s": [6.25, 73.5, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 12, + "ty": 4, + "nm": "5", + "parent": 11, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 100, "ix": 11}, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.798, "y": 0}, + "o": {"x": 0.4, "y": 0}, + "t": 4, + "s": [50.652, 49.891, 0], + "to": [-0.881, -5.447, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.155, "y": 1}, + "t": 30, + "s": [45.364, 17.206, 0], + "to": [0, 0, 0], + "ti": [-0.881, -5.447, 0] + }, + {"t": 64, "s": [50.652, 49.891, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [6.506, 6.485, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.68, 0.68, 0.68], "y": [0.185, 0.185, 1]}, + "o": {"x": [0.4, 0.4, 0.4], "y": [0, 0, 0]}, + "t": 4, + "s": [400, 400, 100] + }, + { + "i": {"x": [0.6, 0.6, 0.6], "y": [1, 1, 1]}, + "o": {"x": [0.32, 0.32, 0.32], "y": [1.065, 1.065, 0]}, + "t": 30, + "s": [250, 250, 100] + }, + {"t": 64, "s": [400, 400, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 1, + "k": [ + { + "i": {"x": 0.68, "y": 0.06}, + "o": {"x": 0.4, "y": 0}, + "t": 4, + "s": [ + { + "i": [ + [0.564, 0.706], + [1.913, -1.93], + [-0.74, -0.886], + [-2.516, 2.423] + ], + "o": [ + [-0.6, -0.769], + [-2.408, 2.431], + [0.734, 0.88], + [1.959, -1.887] + ], + "v": [ + [4.188, -4.173], + [-1.389, -1.624], + [-4.4, 4.321], + [1.496, 1.451] + ], + "c": true + } + ] + }, + { + "i": {"x": 0.833, "y": 0.833}, + "o": {"x": 0.167, "y": 0.167}, + "t": 26, + "s": [ + { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + } + ] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.32, "y": 0.94}, + "t": 34, + "s": [ + { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + } + ] + }, + { + "t": 64, + "s": [ + { + "i": [ + [0.564, 0.706], + [1.913, -1.93], + [-0.74, -0.886], + [-2.516, 2.423] + ], + "o": [ + [-0.6, -0.769], + [-2.408, 2.431], + [0.734, 0.88], + [1.959, -1.887] + ], + "v": [ + [4.188, -4.173], + [-1.389, -1.624], + [-4.4, 4.321], + [1.496, 1.451] + ], + "c": true + } + ] + } + ], + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "mm", + "mm": 4, + "nm": "Merge Paths 1", + "mn": "ADBE Vector Filter - Merge", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 1, + "k": [ + { + "i": {"x": [0.833], "y": [0.833]}, + "o": {"x": [0.167], "y": [0.167]}, + "t": 32, + "s": [1, 1, 1, 1] + }, + { + "i": {"x": [0.833], "y": [0.833]}, + "o": {"x": [0.167], "y": [0.167]}, + "t": 34, + "s": [1, 0.933333337307, 0.333333343267, 1] + }, + { + "i": {"x": [0.833], "y": [0.833]}, + "o": {"x": [0.167], "y": [0.167]}, + "t": 43, + "s": [1, 0.933333337307, 0.333333343267, 1] + }, + {"t": 45, "s": [1, 1, 1, 1]} + ], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [6.506, 6.485], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Group 1", + "np": 3, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 68, + "st": 4, + "bm": 0 + }, + { + "ddd": 0, + "ind": 13, + "ty": 3, + "nm": "Null 4", + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": { + "a": 1, + "k": [ + { + "i": {"x": [0.24], "y": [0.86]}, + "o": {"x": [0.76], "y": [0.19]}, + "t": 0, + "s": [0] + }, + {"t": 66, "s": [360]} + ], + "ix": 10 + }, + "p": {"a": 0, "k": [120, 120, 0], "ix": 2}, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 3, + "bm": 0 + }, + { + "ddd": 0, + "ind": 14, + "ty": 3, + "nm": "Null 7", + "parent": 13, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": {"a": 0, "k": 121.889, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.68, "y": 0.446}, + "o": {"x": 0.4, "y": 0}, + "t": 0, + "s": [46.875, 97, 0], + "to": [0, 0, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.32, "y": 0.482}, + "t": 32, + "s": [31.295, 128.342, 0], + "to": [0, 0, 0], + "ti": [0, 0, 0] + }, + {"t": 66, "s": [46.875, 97, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 15, + "ty": 4, + "nm": "4", + "parent": 14, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 100, "ix": 11}, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.854, "y": 0}, + "o": {"x": 0.4, "y": 0}, + "t": 3, + "s": [48.652, 49.391, 0], + "to": [2.512, 3.544, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.12, "y": 1}, + "t": 30, + "s": [63.724, 70.652, 0], + "to": [0, 0, 0], + "ti": [2.512, 3.544, 0] + }, + {"t": 63, "s": [48.652, 49.391, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [6.506, 6.485, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.68, 0.68, 0.68], "y": [0.154, 0.154, 1]}, + "o": {"x": [0.4, 0.4, 0.4], "y": [0, 0, 0]}, + "t": 3, + "s": [400, 400, 100] + }, + { + "i": {"x": [0.6, 0.6, 0.6], "y": [1, 1, 1]}, + "o": {"x": [0.32, 0.32, 0.32], "y": [1.034, 1.034, 0]}, + "t": 30, + "s": [250, 250, 100] + }, + {"t": 63, "s": [400, 400, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 1, + "k": [ + { + "i": {"x": 0.68, "y": 0.06}, + "o": {"x": 0.4, "y": 0}, + "t": 3, + "s": [ + { + "i": [ + [0.564, 0.706], + [2.371, -2.672], + [-0.74, -0.886], + [-2.516, 2.423] + ], + "o": [ + [-0.975, -1.342], + [-2.271, 2.56], + [0.734, 0.88], + [2.608, -2.511] + ], + "v": [ + [4.839, -4.831], + [-1.389, -1.624], + [-4.4, 4.321], + [1.496, 1.451] + ], + "c": true + } + ] + }, + { + "i": {"x": 0.833, "y": 0.833}, + "o": {"x": 0.167, "y": 0.167}, + "t": 26, + "s": [ + { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + } + ] + }, + { + "i": {"x": 0.74, "y": 1}, + "o": {"x": 0.4, "y": 0.8}, + "t": 34, + "s": [ + { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + } + ] + }, + { + "t": 63, + "s": [ + { + "i": [ + [0.564, 0.706], + [2.371, -2.672], + [-0.74, -0.886], + [-2.516, 2.423] + ], + "o": [ + [-0.975, -1.342], + [-2.271, 2.56], + [0.734, 0.88], + [2.608, -2.511] + ], + "v": [ + [4.839, -4.831], + [-1.389, -1.624], + [-4.4, 4.321], + [1.496, 1.451] + ], + "c": true + } + ] + } + ], + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "mm", + "mm": 4, + "nm": "Merge Paths 1", + "mn": "ADBE Vector Filter - Merge", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 1, + "k": [ + { + "i": {"x": [0.833], "y": [0.833]}, + "o": {"x": [0.167], "y": [0.167]}, + "t": 29, + "s": [1, 1, 1, 1] + }, + { + "i": {"x": [0.833], "y": [0.833]}, + "o": {"x": [0.167], "y": [0.167]}, + "t": 31, + "s": [1, 0.933333337307, 0.333333343267, 1] + }, + { + "i": {"x": [0.833], "y": [0.833]}, + "o": {"x": [0.167], "y": [0.167]}, + "t": 40, + "s": [1, 0.933333337307, 0.333333343267, 1] + }, + {"t": 42, "s": [1, 1, 1, 1]} + ], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [6.506, 6.485], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Group 1", + "np": 3, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 68, + "st": 3, + "bm": 0 + }, + { + "ddd": 0, + "ind": 16, + "ty": 3, + "nm": "Null 4", + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": { + "a": 1, + "k": [ + { + "i": {"x": [0.24], "y": [0.86]}, + "o": {"x": [0.76], "y": [0.19]}, + "t": 0, + "s": [0] + }, + {"t": 66, "s": [360]} + ], + "ix": 10 + }, + "p": {"a": 0, "k": [120, 120, 0], "ix": 2}, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 2, + "bm": 0 + }, + { + "ddd": 0, + "ind": 17, + "ty": 3, + "nm": "Null 6", + "parent": 16, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": {"a": 0, "k": 63.363, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.68, "y": 0.4}, + "o": {"x": 0.4, "y": 0}, + "t": 0, + "s": [88.5, 74.5, 0], + "to": [5.393, 3.57, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.32, "y": 0.592}, + "t": 31, + "s": [120.859, 95.923, 0], + "to": [0, 0, 0], + "ti": [5.393, 3.57, 0] + }, + {"t": 66, "s": [88.5, 74.5, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 18, + "ty": 4, + "nm": "3", + "parent": 17, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 100, "ix": 11}, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.911, "y": 0}, + "o": {"x": 0.4, "y": 0}, + "t": 2, + "s": [50.527, 49.516, 0], + "to": [1.922, 1.871, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.078, "y": 1}, + "t": 30, + "s": [62.061, 60.743, 0], + "to": [0, 0, 0], + "ti": [1.922, 1.871, 0] + }, + {"t": 62, "s": [50.527, 49.516, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [6.506, 6.485, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.68, 0.68, 0.68], "y": [0.123, 0.123, 1]}, + "o": {"x": [0.4, 0.4, 0.4], "y": [0, 0, 0]}, + "t": 2, + "s": [400, 400, 100] + }, + { + "i": {"x": [0.6, 0.6, 0.6], "y": [1, 1, 1]}, + "o": {"x": [0.32, 0.32, 0.32], "y": [1.003, 1.003, 0]}, + "t": 30, + "s": [250, 250, 100] + }, + {"t": 62, "s": [400, 400, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 1, + "k": [ + { + "i": {"x": 0.68, "y": 0.06}, + "o": {"x": 0.4, "y": 0}, + "t": 2, + "s": [ + { + "i": [ + [0.564, 0.706], + [2.371, -2.672], + [-0.74, -0.886], + [-2.516, 2.423] + ], + "o": [ + [-0.975, -1.342], + [-2.271, 2.56], + [0.734, 0.88], + [2.608, -2.511] + ], + "v": [ + [4.839, -4.831], + [-1.389, -1.624], + [-4.4, 4.321], + [1.496, 1.451] + ], + "c": true + } + ] + }, + { + "i": {"x": 0.833, "y": 0.833}, + "o": {"x": 0.167, "y": 0.167}, + "t": 26, + "s": [ + { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + } + ] + }, + { + "i": {"x": 0.74, "y": 1}, + "o": {"x": 0.4, "y": 0.8}, + "t": 34, + "s": [ + { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + } + ] + }, + { + "t": 62, + "s": [ + { + "i": [ + [0.564, 0.706], + [2.371, -2.672], + [-0.74, -0.886], + [-2.516, 2.423] + ], + "o": [ + [-0.975, -1.342], + [-2.271, 2.56], + [0.734, 0.88], + [2.608, -2.511] + ], + "v": [ + [4.839, -4.831], + [-1.389, -1.624], + [-4.4, 4.321], + [1.496, 1.451] + ], + "c": true + } + ] + } + ], + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "mm", + "mm": 4, + "nm": "Merge Paths 1", + "mn": "ADBE Vector Filter - Merge", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 1, + "k": [ + { + "i": {"x": [0.833], "y": [0.833]}, + "o": {"x": [0.167], "y": [0.167]}, + "t": 26, + "s": [1, 1, 1, 1] + }, + { + "i": {"x": [0.833], "y": [0.833]}, + "o": {"x": [0.167], "y": [0.167]}, + "t": 28, + "s": [1, 0.933333337307, 0.333333343267, 1] + }, + { + "i": {"x": [0.833], "y": [0.833]}, + "o": {"x": [0.167], "y": [0.167]}, + "t": 37, + "s": [1, 0.933333337307, 0.333333343267, 1] + }, + {"t": 39, "s": [1, 1, 1, 1]} + ], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [6.506, 6.485], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Group 1", + "np": 3, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 68, + "st": 2, + "bm": 0 + } + ], + "markers": [] +} diff --git a/src/core/ui/animation/Pera_Loader_Gray.json b/src/core/ui/animation/Pera_Loader_Gray.json new file mode 100644 index 0000000..4e9598b --- /dev/null +++ b/src/core/ui/animation/Pera_Loader_Gray.json @@ -0,0 +1,1708 @@ +{ + "v": "4.8.0", + "meta": {"g": "LottieFiles AE 3.0.2", "a": "", "k": "", "d": "", "tc": ""}, + "fr": 30, + "ip": 0, + "op": 66, + "w": 240, + "h": 240, + "nm": "loader ", + "ddd": 0, + "assets": [], + "layers": [ + { + "ddd": 0, + "ind": 1, + "ty": 3, + "nm": "Null 4", + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": { + "a": 1, + "k": [ + { + "i": {"x": [0.24], "y": [0.856]}, + "o": {"x": [0.76], "y": [0.187]}, + "t": 0, + "s": [0] + }, + {"t": 66, "s": [360]} + ], + "ix": 10 + }, + "p": {"a": 0, "k": [120, 120, 0], "ix": 2}, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 69, + "st": 1, + "bm": 0 + }, + { + "ddd": 0, + "ind": 2, + "ty": 3, + "nm": "Null 10", + "parent": 1, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.68, "y": 0.643}, + "o": {"x": 0.4, "y": 0}, + "t": 0, + "s": [89.5, 28.5, 0], + "to": [9.801, 1.891, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.32, "y": 0}, + "t": 30, + "s": [148.305, 39.844, 0], + "to": [0, 0, 0], + "ti": [9.801, 1.891, 0] + }, + {"t": 66, "s": [89.5, 28.5, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 3, + "ty": 4, + "nm": "1", + "parent": 2, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 100, "ix": 11}, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.945, "y": 1}, + "o": {"x": 0.4, "y": 0}, + "t": 1, + "s": [52.027, 49.266, 0], + "to": [-0.833, -1.667, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.044, "y": 0.447}, + "t": 30, + "s": [47.027, 39.266, 0], + "to": [0, 0, 0], + "ti": [-0.833, -1.667, 0] + }, + {"t": 66, "s": [52.027, 49.266, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [6.506, 6.485, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.68, 0.68, 0.68], "y": [0.394, 0.394, 1]}, + "o": {"x": [0.4, 0.4, 0.4], "y": [0, 0, 0]}, + "t": 1, + "s": [400, 400, 100] + }, + { + "i": {"x": [0.6, 0.6, 0.6], "y": [1, 1, 1]}, + "o": {"x": [0.32, 0.32, 0.32], "y": [0.752, 0.752, 0]}, + "t": 30, + "s": [250, 250, 100] + }, + {"t": 66, "s": [400, 400, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 0, + "k": { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + }, + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [0.737254917622, 0.737254917622, 0.784313738346, 1], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [6.506, 6.485], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Group 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 68, + "st": 1, + "bm": 0 + }, + { + "ddd": 0, + "ind": 4, + "ty": 3, + "nm": "Null 4", + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": { + "a": 1, + "k": [ + { + "i": {"x": [0.24], "y": [0.86]}, + "o": {"x": [0.76], "y": [0.19]}, + "t": 0, + "s": [0] + }, + {"t": 66, "s": [360]} + ], + "ix": 10 + }, + "p": {"a": 0, "k": [120, 120, 0], "ix": 2}, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 5, + "ty": 3, + "nm": "Null 5", + "parent": 4, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": {"a": 0, "k": -58.013, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.698, "y": 0.695}, + "o": {"x": 0.378, "y": 0}, + "t": 0, + "s": [51.5, 2.5, 0], + "to": [2.282, -2.178, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.659, "y": 0.544}, + "o": {"x": 0.334, "y": 0.572}, + "t": 19, + "s": [89.692, -16.088, 0], + "to": [0, 0, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.32, "y": 0}, + "t": 35, + "s": [92.896, -37.007, 0], + "to": [0, 0, 0], + "ti": [6.899, -6.585, 0] + }, + {"t": 66, "s": [51.5, 2.5, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 6, + "ty": 4, + "nm": "7", + "parent": 5, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 100, "ix": 11}, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.68, "y": 1}, + "o": {"x": 0.4, "y": 0}, + "t": 3, + "s": [51.152, 48.266, 0], + "to": [-3.818, -3.834, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.205, "y": 0.706}, + "t": 27, + "s": [28.244, 25.262, 0], + "to": [0, 0, 0], + "ti": [-3.818, -3.834, 0] + }, + {"t": 65, "s": [51.152, 48.266, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [6.506, 6.485, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.68, 0.68, 0.68], "y": [0.398, 0.398, 1]}, + "o": {"x": [0.4, 0.4, 0.4], "y": [0, 0, 0]}, + "t": 3, + "s": [400, 400, 100] + }, + { + "i": {"x": [0.6, 0.6, 0.6], "y": [1, 1, 1]}, + "o": {"x": [0.32, 0.32, 0.32], "y": [0.953, 0.953, 0]}, + "t": 27, + "s": [250, 250, 100] + }, + {"t": 65, "s": [400, 400, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 1, + "k": [ + { + "i": {"x": 0.68, "y": 1}, + "o": {"x": 0.4, "y": 0}, + "t": 3, + "s": [ + { + "i": [ + [0.564, 0.706], + [1.913, -1.93], + [-0.74, -0.886], + [-2.516, 2.423] + ], + "o": [ + [-0.6, -0.769], + [-2.408, 2.431], + [0.734, 0.88], + [1.959, -1.887] + ], + "v": [ + [4.188, -4.173], + [-1.389, -1.624], + [-4.4, 4.321], + [1.496, 1.451] + ], + "c": true + } + ] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26, + "s": [ + { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + } + ] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.32, "y": 0}, + "t": 34, + "s": [ + { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + } + ] + }, + { + "t": 65, + "s": [ + { + "i": [ + [0.564, 0.706], + [1.913, -1.93], + [-0.74, -0.886], + [-2.516, 2.423] + ], + "o": [ + [-0.6, -0.769], + [-2.408, 2.431], + [0.734, 0.88], + [1.959, -1.887] + ], + "v": [ + [4.188, -4.173], + [-1.389, -1.624], + [-4.4, 4.321], + [1.496, 1.451] + ], + "c": true + } + ] + } + ], + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [0.737254917622, 0.737254917622, 0.784313738346, 1], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [6.506, 6.485], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Group 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 68, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 7, + "ty": 3, + "nm": "Null 4", + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": { + "a": 1, + "k": [ + { + "i": {"x": [0.24], "y": [0.86]}, + "o": {"x": [0.76], "y": [0.19]}, + "t": 0, + "s": [0] + }, + {"t": 66, "s": [360]} + ], + "ix": 10 + }, + "p": {"a": 0, "k": [120, 120, 0], "ix": 2}, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 5, + "bm": 0 + }, + { + "ddd": 0, + "ind": 8, + "ty": 3, + "nm": "Null 9", + "parent": 7, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": {"a": 0, "k": 61.855, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.68, "y": 1}, + "o": {"x": 0.4, "y": 0}, + "t": 0, + "s": [9.25, 26, 0], + "to": [0, 0, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.32, "y": 0.379}, + "t": 34, + "s": [-26.339, -7.312, 0], + "to": [0, 0, 0], + "ti": [0, 0, 0] + }, + {"t": 66, "s": [9.25, 26, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 9, + "ty": 4, + "nm": "6", + "parent": 8, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 100, "ix": 11}, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.693, "y": 1}, + "o": {"x": 0.4, "y": 0}, + "t": 5, + "s": [48.277, 50.891, 0], + "to": [-1.015, -7.059, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.219, "y": 0.142}, + "t": 30, + "s": [42.185, 8.534, 0], + "to": [0, 0, 0], + "ti": [-1.015, -7.059, 0] + }, + {"t": 65, "s": [48.277, 50.891, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [6.506, 6.485, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.68, 0.68, 0.68], "y": [0.217, 0.217, 1]}, + "o": {"x": [0.4, 0.4, 0.4], "y": [0, 0, 0]}, + "t": 5, + "s": [400, 400, 100] + }, + { + "i": {"x": [0.6, 0.6, 0.6], "y": [1, 1, 1]}, + "o": {"x": [0.32, 0.32, 0.32], "y": [1.097, 1.097, 0]}, + "t": 30, + "s": [250, 250, 100] + }, + {"t": 65, "s": [400, 400, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 1, + "k": [ + { + "i": {"x": 0.74, "y": 1}, + "o": {"x": 0.52, "y": 0}, + "t": 5, + "s": [ + { + "i": [ + [0.564, 0.706], + [1.913, -1.93], + [-0.74, -0.886], + [-2.516, 2.423] + ], + "o": [ + [-0.6, -0.769], + [-2.408, 2.431], + [0.734, 0.88], + [1.959, -1.887] + ], + "v": [ + [4.188, -4.173], + [-1.389, -1.624], + [-4.4, 4.321], + [1.496, 1.451] + ], + "c": true + } + ] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26, + "s": [ + { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + } + ] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.32, "y": 0}, + "t": 34, + "s": [ + { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + } + ] + }, + { + "t": 65, + "s": [ + { + "i": [ + [0.564, 0.706], + [1.913, -1.93], + [-0.74, -0.886], + [-2.516, 2.423] + ], + "o": [ + [-0.6, -0.769], + [-2.408, 2.431], + [0.734, 0.88], + [1.959, -1.887] + ], + "v": [ + [4.188, -4.173], + [-1.389, -1.624], + [-4.4, 4.321], + [1.496, 1.451] + ], + "c": true + } + ] + } + ], + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [0.737254917622, 0.737254917622, 0.784313738346, 1], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [6.506, 6.485], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Group 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 68, + "st": 5, + "bm": 0 + }, + { + "ddd": 0, + "ind": 10, + "ty": 3, + "nm": "Null 4", + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": { + "a": 1, + "k": [ + { + "i": {"x": [0.24], "y": [0.86]}, + "o": {"x": [0.76], "y": [0.19]}, + "t": 0, + "s": [0] + }, + {"t": 66, "s": [360]} + ], + "ix": 10 + }, + "p": {"a": 0, "k": [120, 120, 0], "ix": 2}, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 4, + "bm": 0 + }, + { + "ddd": 0, + "ind": 11, + "ty": 3, + "nm": "Null 8", + "parent": 10, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.68, "y": 1}, + "o": {"x": 0.4, "y": 0}, + "t": 0, + "s": [6.25, 73.5, 0], + "to": [0, 0, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.32, "y": 0.571}, + "t": 33, + "s": [-36.208, 68.618, 0], + "to": [0, 0, 0], + "ti": [0, 0, 0] + }, + {"t": 66, "s": [6.25, 73.5, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 12, + "ty": 4, + "nm": "5", + "parent": 11, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 100, "ix": 11}, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.798, "y": 1}, + "o": {"x": 0.4, "y": 0}, + "t": 4, + "s": [50.652, 49.891, 0], + "to": [-0.881, -5.447, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.155, "y": 0.16}, + "t": 30, + "s": [45.364, 17.206, 0], + "to": [0, 0, 0], + "ti": [-0.881, -5.447, 0] + }, + {"t": 64, "s": [50.652, 49.891, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [6.506, 6.485, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.68, 0.68, 0.68], "y": [0.185, 0.185, 1]}, + "o": {"x": [0.4, 0.4, 0.4], "y": [0, 0, 0]}, + "t": 4, + "s": [400, 400, 100] + }, + { + "i": {"x": [0.6, 0.6, 0.6], "y": [1, 1, 1]}, + "o": {"x": [0.32, 0.32, 0.32], "y": [1.065, 1.065, 0]}, + "t": 30, + "s": [250, 250, 100] + }, + {"t": 64, "s": [400, 400, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 1, + "k": [ + { + "i": {"x": 0.68, "y": 1}, + "o": {"x": 0.4, "y": 0}, + "t": 4, + "s": [ + { + "i": [ + [0.564, 0.706], + [1.913, -1.93], + [-0.74, -0.886], + [-2.516, 2.423] + ], + "o": [ + [-0.6, -0.769], + [-2.408, 2.431], + [0.734, 0.88], + [1.959, -1.887] + ], + "v": [ + [4.188, -4.173], + [-1.389, -1.624], + [-4.4, 4.321], + [1.496, 1.451] + ], + "c": true + } + ] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26, + "s": [ + { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + } + ] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.32, "y": 0}, + "t": 34, + "s": [ + { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + } + ] + }, + { + "t": 64, + "s": [ + { + "i": [ + [0.564, 0.706], + [1.913, -1.93], + [-0.74, -0.886], + [-2.516, 2.423] + ], + "o": [ + [-0.6, -0.769], + [-2.408, 2.431], + [0.734, 0.88], + [1.959, -1.887] + ], + "v": [ + [4.188, -4.173], + [-1.389, -1.624], + [-4.4, 4.321], + [1.496, 1.451] + ], + "c": true + } + ] + } + ], + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [0.737254917622, 0.737254917622, 0.784313738346, 1], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [6.506, 6.485], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Group 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 68, + "st": 4, + "bm": 0 + }, + { + "ddd": 0, + "ind": 13, + "ty": 3, + "nm": "Null 4", + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": { + "a": 1, + "k": [ + { + "i": {"x": [0.24], "y": [0.86]}, + "o": {"x": [0.76], "y": [0.19]}, + "t": 0, + "s": [0] + }, + {"t": 66, "s": [360]} + ], + "ix": 10 + }, + "p": {"a": 0, "k": [120, 120, 0], "ix": 2}, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 3, + "bm": 0 + }, + { + "ddd": 0, + "ind": 14, + "ty": 3, + "nm": "Null 7", + "parent": 13, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": {"a": 0, "k": 121.889, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.68, "y": 1}, + "o": {"x": 0.4, "y": 0}, + "t": 0, + "s": [46.875, 97, 0], + "to": [0, 0, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.32, "y": 0.215}, + "t": 32, + "s": [31.295, 128.342, 0], + "to": [0, 0, 0], + "ti": [0, 0, 0] + }, + {"t": 66, "s": [46.875, 97, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 15, + "ty": 4, + "nm": "4", + "parent": 14, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 100, "ix": 11}, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.854, "y": 0.422}, + "o": {"x": 0.4, "y": 0}, + "t": 3, + "s": [48.652, 49.391, 0], + "to": [2.512, 3.544, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.12, "y": 0}, + "t": 30, + "s": [63.724, 70.652, 0], + "to": [0, 0, 0], + "ti": [2.512, 3.544, 0] + }, + {"t": 63, "s": [48.652, 49.391, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [6.506, 6.485, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.68, 0.68, 0.68], "y": [0.154, 0.154, 1]}, + "o": {"x": [0.4, 0.4, 0.4], "y": [0, 0, 0]}, + "t": 3, + "s": [400, 400, 100] + }, + { + "i": {"x": [0.6, 0.6, 0.6], "y": [1, 1, 1]}, + "o": {"x": [0.32, 0.32, 0.32], "y": [1.034, 1.034, 0]}, + "t": 30, + "s": [250, 250, 100] + }, + {"t": 63, "s": [400, 400, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 1, + "k": [ + { + "i": {"x": 0.68, "y": 1}, + "o": {"x": 0.4, "y": 0}, + "t": 3, + "s": [ + { + "i": [ + [0.564, 0.706], + [2.371, -2.672], + [-0.74, -0.886], + [-2.516, 2.423] + ], + "o": [ + [-0.975, -1.342], + [-2.271, 2.56], + [0.734, 0.88], + [2.608, -2.511] + ], + "v": [ + [4.839, -4.831], + [-1.389, -1.624], + [-4.4, 4.321], + [1.496, 1.451] + ], + "c": true + } + ] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26, + "s": [ + { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + } + ] + }, + { + "i": {"x": 0.74, "y": 1}, + "o": {"x": 0.4, "y": 0}, + "t": 34, + "s": [ + { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + } + ] + }, + { + "t": 63, + "s": [ + { + "i": [ + [0.564, 0.706], + [2.371, -2.672], + [-0.74, -0.886], + [-2.516, 2.423] + ], + "o": [ + [-0.975, -1.342], + [-2.271, 2.56], + [0.734, 0.88], + [2.608, -2.511] + ], + "v": [ + [4.839, -4.831], + [-1.389, -1.624], + [-4.4, 4.321], + [1.496, 1.451] + ], + "c": true + } + ] + } + ], + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [0.737254917622, 0.737254917622, 0.784313738346, 1], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [6.506, 6.485], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Group 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 68, + "st": 3, + "bm": 0 + }, + { + "ddd": 0, + "ind": 16, + "ty": 3, + "nm": "Null 4", + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": { + "a": 1, + "k": [ + { + "i": {"x": [0.24], "y": [0.86]}, + "o": {"x": [0.76], "y": [0.19]}, + "t": 0, + "s": [0] + }, + {"t": 66, "s": [360]} + ], + "ix": 10 + }, + "p": {"a": 0, "k": [120, 120, 0], "ix": 2}, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 2, + "bm": 0 + }, + { + "ddd": 0, + "ind": 17, + "ty": 3, + "nm": "Null 6", + "parent": 16, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 0, "ix": 11}, + "r": {"a": 0, "k": 63.363, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.68, "y": 0.5}, + "o": {"x": 0.4, "y": 0}, + "t": 0, + "s": [88.5, 74.5, 0], + "to": [5.393, 3.57, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.32, "y": 0}, + "t": 31, + "s": [120.859, 95.923, 0], + "to": [0, 0, 0], + "ti": [5.393, 3.57, 0] + }, + {"t": 66, "s": [88.5, 74.5, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [50, 50, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100, 100], "ix": 6} + }, + "ao": 0, + "ip": 0, + "op": 68, + "st": 0, + "bm": 0 + }, + { + "ddd": 0, + "ind": 18, + "ty": 4, + "nm": "3", + "parent": 17, + "sr": 1, + "ks": { + "o": {"a": 0, "k": 100, "ix": 11}, + "r": {"a": 0, "k": 0, "ix": 10}, + "p": { + "a": 1, + "k": [ + { + "i": {"x": 0.911, "y": 0.283}, + "o": {"x": 0.4, "y": 0}, + "t": 2, + "s": [50.527, 49.516, 0], + "to": [1.922, 1.871, 0], + "ti": [0, 0, 0] + }, + { + "i": {"x": 0.6, "y": 1}, + "o": {"x": 0.078, "y": 0}, + "t": 30, + "s": [62.061, 60.743, 0], + "to": [0, 0, 0], + "ti": [1.922, 1.871, 0] + }, + {"t": 62, "s": [50.527, 49.516, 0]} + ], + "ix": 2 + }, + "a": {"a": 0, "k": [6.506, 6.485, 0], "ix": 1}, + "s": { + "a": 1, + "k": [ + { + "i": {"x": [0.68, 0.68, 0.68], "y": [0.123, 0.123, 1]}, + "o": {"x": [0.4, 0.4, 0.4], "y": [0, 0, 0]}, + "t": 2, + "s": [400, 400, 100] + }, + { + "i": {"x": [0.6, 0.6, 0.6], "y": [1, 1, 1]}, + "o": {"x": [0.32, 0.32, 0.32], "y": [1.003, 1.003, 0]}, + "t": 30, + "s": [250, 250, 100] + }, + {"t": 62, "s": [400, 400, 100]} + ], + "ix": 6 + } + }, + "ao": 0, + "shapes": [ + { + "ty": "gr", + "it": [ + { + "ind": 0, + "ty": "sh", + "ix": 1, + "ks": { + "a": 1, + "k": [ + { + "i": {"x": 0.68, "y": 1}, + "o": {"x": 0.4, "y": 0}, + "t": 2, + "s": [ + { + "i": [ + [0.564, 0.706], + [2.371, -2.672], + [-0.74, -0.886], + [-2.516, 2.423] + ], + "o": [ + [-0.975, -1.342], + [-2.271, 2.56], + [0.734, 0.88], + [2.608, -2.511] + ], + "v": [ + [4.839, -4.831], + [-1.389, -1.624], + [-4.4, 4.321], + [1.496, 1.451] + ], + "c": true + } + ] + }, + { + "i": {"x": 0.833, "y": 1}, + "o": {"x": 0.167, "y": 0}, + "t": 26, + "s": [ + { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + } + ] + }, + { + "i": {"x": 0.74, "y": 1}, + "o": {"x": 0.4, "y": 0}, + "t": 34, + "s": [ + { + "i": [ + [1.722, 1.825], + [2.504, -2.435], + [-1.722, -1.825], + [-2.504, 2.435] + ], + "o": [ + [-1.722, -1.825], + [-2.504, 2.435], + [1.722, 1.825], + [2.504, -2.435] + ], + "v": [ + [4.534, -4.41], + [-3.118, -3.305], + [-4.534, 4.409], + [3.118, 3.304] + ], + "c": true + } + ] + }, + { + "t": 62, + "s": [ + { + "i": [ + [0.564, 0.706], + [2.371, -2.672], + [-0.74, -0.886], + [-2.516, 2.423] + ], + "o": [ + [-0.975, -1.342], + [-2.271, 2.56], + [0.734, 0.88], + [2.608, -2.511] + ], + "v": [ + [4.839, -4.831], + [-1.389, -1.624], + [-4.4, 4.321], + [1.496, 1.451] + ], + "c": true + } + ] + } + ], + "ix": 2 + }, + "nm": "Path 1", + "mn": "ADBE Vector Shape - Group", + "hd": false + }, + { + "ty": "fl", + "c": { + "a": 0, + "k": [0.737254917622, 0.737254917622, 0.784313738346, 1], + "ix": 4 + }, + "o": {"a": 0, "k": 100, "ix": 5}, + "r": 1, + "bm": 0, + "nm": "Fill 1", + "mn": "ADBE Vector Graphic - Fill", + "hd": false + }, + { + "ty": "tr", + "p": {"a": 0, "k": [6.506, 6.485], "ix": 2}, + "a": {"a": 0, "k": [0, 0], "ix": 1}, + "s": {"a": 0, "k": [100, 100], "ix": 3}, + "r": {"a": 0, "k": 0, "ix": 6}, + "o": {"a": 0, "k": 100, "ix": 7}, + "sk": {"a": 0, "k": 0, "ix": 4}, + "sa": {"a": 0, "k": 0, "ix": 5}, + "nm": "Transform" + } + ], + "nm": "Group 1", + "np": 2, + "cix": 2, + "bm": 0, + "ix": 1, + "mn": "ADBE Vector Group", + "hd": false + } + ], + "ip": 0, + "op": 68, + "st": 2, + "bm": 0 + } + ], + "markers": [] +} diff --git a/src/core/ui/icons/account-default.svg b/src/core/ui/icons/account-default.svg new file mode 100644 index 0000000..b9d6255 --- /dev/null +++ b/src/core/ui/icons/account-default.svg @@ -0,0 +1,4 @@ + diff --git a/src/core/ui/icons/account-ledger.svg b/src/core/ui/icons/account-ledger.svg new file mode 100644 index 0000000..b926720 --- /dev/null +++ b/src/core/ui/icons/account-ledger.svg @@ -0,0 +1,6 @@ + diff --git a/src/core/ui/icons/activity.svg b/src/core/ui/icons/activity.svg new file mode 100644 index 0000000..4f78526 --- /dev/null +++ b/src/core/ui/icons/activity.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/core/ui/icons/add-funds.svg b/src/core/ui/icons/add-funds.svg new file mode 100644 index 0000000..ef2adf9 --- /dev/null +++ b/src/core/ui/icons/add-funds.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/algo-asa.svg b/src/core/ui/icons/algo-asa.svg new file mode 100644 index 0000000..e37fd15 --- /dev/null +++ b/src/core/ui/icons/algo-asa.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/core/ui/icons/algo.svg b/src/core/ui/icons/algo.svg new file mode 100644 index 0000000..0116967 --- /dev/null +++ b/src/core/ui/icons/algo.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/application-call.svg b/src/core/ui/icons/application-call.svg new file mode 100644 index 0000000..840ba39 --- /dev/null +++ b/src/core/ui/icons/application-call.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/core/ui/icons/arrow-left.svg b/src/core/ui/icons/arrow-left.svg new file mode 100644 index 0000000..2929c63 --- /dev/null +++ b/src/core/ui/icons/arrow-left.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/arrow-right.svg b/src/core/ui/icons/arrow-right.svg new file mode 100644 index 0000000..b72b023 --- /dev/null +++ b/src/core/ui/icons/arrow-right.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/asa-suspicious.svg b/src/core/ui/icons/asa-suspicious.svg new file mode 100644 index 0000000..bd37c5a --- /dev/null +++ b/src/core/ui/icons/asa-suspicious.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/core/ui/icons/asa-trusted.svg b/src/core/ui/icons/asa-trusted.svg new file mode 100644 index 0000000..f9cc565 --- /dev/null +++ b/src/core/ui/icons/asa-trusted.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/core/ui/icons/asa-verified.svg b/src/core/ui/icons/asa-verified.svg new file mode 100644 index 0000000..2376bd0 --- /dev/null +++ b/src/core/ui/icons/asa-verified.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/core/ui/icons/asset.svg b/src/core/ui/icons/asset.svg new file mode 100644 index 0000000..569b516 --- /dev/null +++ b/src/core/ui/icons/asset.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/broom.svg b/src/core/ui/icons/broom.svg new file mode 100644 index 0000000..9fcbd13 --- /dev/null +++ b/src/core/ui/icons/broom.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/core/ui/icons/check-shield.svg b/src/core/ui/icons/check-shield.svg new file mode 100644 index 0000000..b5baac5 --- /dev/null +++ b/src/core/ui/icons/check-shield.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/core/ui/icons/checkbox.svg b/src/core/ui/icons/checkbox.svg new file mode 100644 index 0000000..1cad732 --- /dev/null +++ b/src/core/ui/icons/checkbox.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/checkmark.svg b/src/core/ui/icons/checkmark.svg new file mode 100644 index 0000000..550b2de --- /dev/null +++ b/src/core/ui/icons/checkmark.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/chevron-right.svg b/src/core/ui/icons/chevron-right.svg new file mode 100644 index 0000000..e308385 --- /dev/null +++ b/src/core/ui/icons/chevron-right.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/core/ui/icons/close.svg b/src/core/ui/icons/close.svg new file mode 100644 index 0000000..81c10b3 --- /dev/null +++ b/src/core/ui/icons/close.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/collectibles.svg b/src/core/ui/icons/collectibles.svg new file mode 100644 index 0000000..1abbb61 --- /dev/null +++ b/src/core/ui/icons/collectibles.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/command-key.svg b/src/core/ui/icons/command-key.svg new file mode 100644 index 0000000..5f462ee --- /dev/null +++ b/src/core/ui/icons/command-key.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/copy.svg b/src/core/ui/icons/copy.svg new file mode 100644 index 0000000..5adbf3e --- /dev/null +++ b/src/core/ui/icons/copy.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/create.svg b/src/core/ui/icons/create.svg new file mode 100644 index 0000000..96605d6 --- /dev/null +++ b/src/core/ui/icons/create.svg @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/core/ui/icons/danger.svg b/src/core/ui/icons/danger.svg new file mode 100644 index 0000000..b206485 --- /dev/null +++ b/src/core/ui/icons/danger.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/core/ui/icons/dapp.svg b/src/core/ui/icons/dapp.svg new file mode 100644 index 0000000..77f9db4 --- /dev/null +++ b/src/core/ui/icons/dapp.svg @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/src/core/ui/icons/delete.svg b/src/core/ui/icons/delete.svg new file mode 100644 index 0000000..dab7c5a --- /dev/null +++ b/src/core/ui/icons/delete.svg @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/core/ui/icons/discord.svg b/src/core/ui/icons/discord.svg new file mode 100644 index 0000000..c817908 --- /dev/null +++ b/src/core/ui/icons/discord.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/empty-wallet.svg b/src/core/ui/icons/empty-wallet.svg new file mode 100644 index 0000000..057c813 --- /dev/null +++ b/src/core/ui/icons/empty-wallet.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/core/ui/icons/exclamation-shield.svg b/src/core/ui/icons/exclamation-shield.svg new file mode 100644 index 0000000..a67f09e --- /dev/null +++ b/src/core/ui/icons/exclamation-shield.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/core/ui/icons/explore.svg b/src/core/ui/icons/explore.svg new file mode 100644 index 0000000..7dc1aee --- /dev/null +++ b/src/core/ui/icons/explore.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/core/ui/icons/export.svg b/src/core/ui/icons/export.svg new file mode 100644 index 0000000..0af2034 --- /dev/null +++ b/src/core/ui/icons/export.svg @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/src/core/ui/icons/global.svg b/src/core/ui/icons/global.svg new file mode 100644 index 0000000..cd18d65 --- /dev/null +++ b/src/core/ui/icons/global.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/core/ui/icons/home.svg b/src/core/ui/icons/home.svg new file mode 100644 index 0000000..867b3e8 --- /dev/null +++ b/src/core/ui/icons/home.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/info.svg b/src/core/ui/icons/info.svg new file mode 100644 index 0000000..7e092ee --- /dev/null +++ b/src/core/ui/icons/info.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/core/ui/icons/key.svg b/src/core/ui/icons/key.svg new file mode 100644 index 0000000..7440d1e --- /dev/null +++ b/src/core/ui/icons/key.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/layer.svg b/src/core/ui/icons/layer.svg new file mode 100644 index 0000000..7c25fa6 --- /dev/null +++ b/src/core/ui/icons/layer.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/core/ui/icons/ledger.svg b/src/core/ui/icons/ledger.svg new file mode 100644 index 0000000..cf7b0a9 --- /dev/null +++ b/src/core/ui/icons/ledger.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/core/ui/icons/lock-password-login-delete.svg b/src/core/ui/icons/lock-password-login-delete.svg new file mode 100644 index 0000000..ead3358 --- /dev/null +++ b/src/core/ui/icons/lock-password-login-delete.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/core/ui/icons/lock-password-login-error.svg b/src/core/ui/icons/lock-password-login-error.svg new file mode 100644 index 0000000..fc48d5b --- /dev/null +++ b/src/core/ui/icons/lock-password-login-error.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/core/ui/icons/lock-password-login-success.svg b/src/core/ui/icons/lock-password-login-success.svg new file mode 100644 index 0000000..e34a661 --- /dev/null +++ b/src/core/ui/icons/lock-password-login-success.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/core/ui/icons/lock-password-login.svg b/src/core/ui/icons/lock-password-login.svg new file mode 100644 index 0000000..cded5df --- /dev/null +++ b/src/core/ui/icons/lock-password-login.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/core/ui/icons/lock.svg b/src/core/ui/icons/lock.svg new file mode 100644 index 0000000..4077ed5 --- /dev/null +++ b/src/core/ui/icons/lock.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/modify.svg b/src/core/ui/icons/modify.svg new file mode 100644 index 0000000..ccd3cbe --- /dev/null +++ b/src/core/ui/icons/modify.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/core/ui/icons/more.svg b/src/core/ui/icons/more.svg new file mode 100644 index 0000000..4f4444e --- /dev/null +++ b/src/core/ui/icons/more.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/core/ui/icons/node.svg b/src/core/ui/icons/node.svg new file mode 100644 index 0000000..373614d --- /dev/null +++ b/src/core/ui/icons/node.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/core/ui/icons/opt-in.svg b/src/core/ui/icons/opt-in.svg new file mode 100644 index 0000000..97743b8 --- /dev/null +++ b/src/core/ui/icons/opt-in.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/password-hidden.svg b/src/core/ui/icons/password-hidden.svg new file mode 100644 index 0000000..74f9943 --- /dev/null +++ b/src/core/ui/icons/password-hidden.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/password-visible.svg b/src/core/ui/icons/password-visible.svg new file mode 100644 index 0000000..3399afa --- /dev/null +++ b/src/core/ui/icons/password-visible.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/pen.svg b/src/core/ui/icons/pen.svg new file mode 100644 index 0000000..92f1c95 --- /dev/null +++ b/src/core/ui/icons/pen.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/pera-logo-with-text.svg b/src/core/ui/icons/pera-logo-with-text.svg new file mode 100644 index 0000000..95dc1fc --- /dev/null +++ b/src/core/ui/icons/pera-logo-with-text.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/pera-logo.svg b/src/core/ui/icons/pera-logo.svg new file mode 100644 index 0000000..111abe3 --- /dev/null +++ b/src/core/ui/icons/pera-logo.svg @@ -0,0 +1,26 @@ + diff --git a/src/core/ui/icons/pera-sync.svg b/src/core/ui/icons/pera-sync.svg new file mode 100644 index 0000000..93f7b2b --- /dev/null +++ b/src/core/ui/icons/pera-sync.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/core/ui/icons/pera-transfer.svg b/src/core/ui/icons/pera-transfer.svg new file mode 100644 index 0000000..35497ac --- /dev/null +++ b/src/core/ui/icons/pera-transfer.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/src/core/ui/icons/pera-web.svg b/src/core/ui/icons/pera-web.svg new file mode 100644 index 0000000..5c1b831 --- /dev/null +++ b/src/core/ui/icons/pera-web.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/core/ui/icons/plus.svg b/src/core/ui/icons/plus.svg new file mode 100644 index 0000000..b72df17 --- /dev/null +++ b/src/core/ui/icons/plus.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/qr-code.svg b/src/core/ui/icons/qr-code.svg new file mode 100644 index 0000000..1a79c85 --- /dev/null +++ b/src/core/ui/icons/qr-code.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/question-mark.svg b/src/core/ui/icons/question-mark.svg new file mode 100644 index 0000000..27a5adb --- /dev/null +++ b/src/core/ui/icons/question-mark.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/core/ui/icons/receive.svg b/src/core/ui/icons/receive.svg new file mode 100644 index 0000000..e349850 --- /dev/null +++ b/src/core/ui/icons/receive.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/reddit.svg b/src/core/ui/icons/reddit.svg new file mode 100644 index 0000000..5d94b17 --- /dev/null +++ b/src/core/ui/icons/reddit.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/safe.svg b/src/core/ui/icons/safe.svg new file mode 100644 index 0000000..00f9bf7 --- /dev/null +++ b/src/core/ui/icons/safe.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/search.svg b/src/core/ui/icons/search.svg new file mode 100644 index 0000000..84bcbe6 --- /dev/null +++ b/src/core/ui/icons/search.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/core/ui/icons/send.svg b/src/core/ui/icons/send.svg new file mode 100644 index 0000000..32dd1af --- /dev/null +++ b/src/core/ui/icons/send.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/settings.svg b/src/core/ui/icons/settings.svg new file mode 100644 index 0000000..3cd0943 --- /dev/null +++ b/src/core/ui/icons/settings.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/share.svg b/src/core/ui/icons/share.svg new file mode 100644 index 0000000..1609efd --- /dev/null +++ b/src/core/ui/icons/share.svg @@ -0,0 +1,3 @@ + diff --git a/src/core/ui/icons/sync.svg b/src/core/ui/icons/sync.svg new file mode 100644 index 0000000..68dffef --- /dev/null +++ b/src/core/ui/icons/sync.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/tick-circle.svg b/src/core/ui/icons/tick-circle.svg new file mode 100644 index 0000000..fa091ac --- /dev/null +++ b/src/core/ui/icons/tick-circle.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/tip.svg b/src/core/ui/icons/tip.svg new file mode 100644 index 0000000..3deda8a --- /dev/null +++ b/src/core/ui/icons/tip.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/twitter.svg b/src/core/ui/icons/twitter.svg new file mode 100644 index 0000000..4d2c71b --- /dev/null +++ b/src/core/ui/icons/twitter.svg @@ -0,0 +1,3 @@ + diff --git a/src/core/ui/icons/unlink.svg b/src/core/ui/icons/unlink.svg new file mode 100644 index 0000000..0c54a98 --- /dev/null +++ b/src/core/ui/icons/unlink.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/core/ui/icons/wallet.svg b/src/core/ui/icons/wallet.svg new file mode 100644 index 0000000..9bc90b7 --- /dev/null +++ b/src/core/ui/icons/wallet.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/core/ui/icons/warning.svg b/src/core/ui/icons/warning.svg new file mode 100644 index 0000000..2f27088 --- /dev/null +++ b/src/core/ui/icons/warning.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/core/ui/image/create-account-illustration.png b/src/core/ui/image/create-account-illustration.png new file mode 100644 index 0000000..1e611a0 Binary files /dev/null and b/src/core/ui/image/create-account-illustration.png differ diff --git a/src/core/ui/image/firefox-not-supported.png b/src/core/ui/image/firefox-not-supported.png new file mode 100644 index 0000000..92d7c36 Binary files /dev/null and b/src/core/ui/image/firefox-not-supported.png differ diff --git a/src/core/ui/image/import-from-mobile-illustration.png b/src/core/ui/image/import-from-mobile-illustration.png new file mode 100644 index 0000000..79b3b00 Binary files /dev/null and b/src/core/ui/image/import-from-mobile-illustration.png differ diff --git a/src/core/ui/image/mobile-not-supported.svg b/src/core/ui/image/mobile-not-supported.svg new file mode 100644 index 0000000..abf6052 --- /dev/null +++ b/src/core/ui/image/mobile-not-supported.svg @@ -0,0 +1,77 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/core/ui/image/moon-pay-logo.svg b/src/core/ui/image/moon-pay-logo.svg new file mode 100644 index 0000000..c53083f --- /dev/null +++ b/src/core/ui/image/moon-pay-logo.svg @@ -0,0 +1,11 @@ + diff --git a/src/core/ui/image/pera-qr-logo.png b/src/core/ui/image/pera-qr-logo.png new file mode 100644 index 0000000..b91e154 Binary files /dev/null and b/src/core/ui/image/pera-qr-logo.png differ diff --git a/src/core/ui/image/recovery-passphrase-illustration.png b/src/core/ui/image/recovery-passphrase-illustration.png new file mode 100644 index 0000000..b85a6ce Binary files /dev/null and b/src/core/ui/image/recovery-passphrase-illustration.png differ diff --git a/src/core/ui/style/_align.scss b/src/core/ui/style/_align.scss new file mode 100644 index 0000000..250bb33 --- /dev/null +++ b/src/core/ui/style/_align.scss @@ -0,0 +1,17 @@ +.align-center { + &--horizontally { + display: flex; + align-items: center; + justify-content: center; + } + + &--vertically { + display: flex; + align-items: center; + } +} + +.has-space-between { + display: flex; + justify-content: space-between; +} diff --git a/src/core/ui/style/_common.scss b/src/core/ui/style/_common.scss new file mode 100644 index 0000000..f5cd940 --- /dev/null +++ b/src/core/ui/style/_common.scss @@ -0,0 +1,28 @@ +@import "../typography/_typography-mixins.scss"; +@import "../style/media-queries"; + +.is-bold { + &, + &.typography { + @include is-bold(); + } +} + +.hide-on-sm { + @include for-small-screens { + /* stylelint-disable declaration-no-important */ + display: none !important; + /* stylelint-enable declaration-no-important */ + } +} + +.bullet { + display: inline-block; + + width: 4px; + height: 4px; + + background-color: var(--text-gray-lightest); + + border-radius: 50%; +} diff --git a/src/core/ui/style/_measure.scss b/src/core/ui/style/_measure.scss new file mode 100644 index 0000000..8e2f5d6 --- /dev/null +++ b/src/core/ui/style/_measure.scss @@ -0,0 +1,20 @@ +@import "./_media-queries.scss"; + +:root { + --page-content-max-width: 1040px; + --page-header-height: auto; + --page-header-z-index: 1; + --page-body-horizontal-padding: auto; + --sidebar-width: 240px; + + --simple-toast-z-index: 5; + --send-txn-select-account-z-index: 2; + + --default-animation: 0.25s ease; +} + +@include for-small-screens { + :root { + --page-content-max-width: 100%; + } +} diff --git a/src/core/ui/style/_media-queries.scss b/src/core/ui/style/_media-queries.scss new file mode 100644 index 0000000..e157607 --- /dev/null +++ b/src/core/ui/style/_media-queries.scss @@ -0,0 +1,18 @@ +$small-max-width: 1024px; +$small-screen-query: "only screen and (max-width: " + $small-max-width + ")"; + +$large-max-width: 1900px; +$large-screen-query: "only screen and (max-width: " + $large-max-width + ")" + + "and (min-width: " + $small-max-width + ")"; + +@mixin for-small-screens { + @media #{$small-screen-query} { + @content; + } +} + +@mixin for-large-screens { + @media #{$large-screen-query} { + @content; + } +} diff --git a/src/core/ui/style/color/_global-colors.scss b/src/core/ui/style/color/_global-colors.scss new file mode 100644 index 0000000..202f7c7 --- /dev/null +++ b/src/core/ui/style/color/_global-colors.scss @@ -0,0 +1,77 @@ +:root { + --black: #000000; + --white: #FFFFFF; + + --gray-100: #F3F3F7; + --gray-200: #E0E0EB; + --gray-200-rgb: 224, 224, 235; + --gray-300: #BCBCC8; + --gray-400: #9D9DAE; + --gray-400-rgb: 157, 157, 174; + --gray-500: #6A6A81; + --gray-600: #4E4E5F; + --gray-700: #3C3C49; + --gray-800: #26262B; + --gray-900: #18181B; + --gray-1000: #0C0C0E; + + --purple-50: #F4F2FE; + --purple-100: #E9E6FE; + --purple-200: #D0CAFE; + --purple-300: #B5AAFE; + --purple-400: #9482FE; + --purple-500: #6B46FE; + --purple-600: #5F3EE3; + --purple-700: #5236C4; + --purple-800: #432CA0; + --purple-900: #2F1F71; + --purple-1000: #19113D; + + --green-50: #F3FCF7; + --green-100: #E0FAEE; + --green-200: #BFF3DA; + --green-300: #8CE8CC; + --green-400: #55D3AD; + --green-500: #25B6A3; + --green-600: #1F9989; + --green-700: #1C786C; + --green-800: #226961; + --green-900: #164741; + --green-1000: #113330; + + --orange-50: #FFF5EA; + --orange-100: #FFEDD6; + --orange-200: #FED6A9; + --orange-300: #FCB972; + --orange-400: #F19346; + --orange-500: #E77625; + --orange-600: #D95D1B; + --orange-700: #B74314; + --orange-800: #9B3B12; + --orange-900: #7C2C11; + --orange-1000: #582817; + + --red-50: #FEF1F1; + --red-100: #FEE1E1; + --red-200: #FDC8C8; + --red-300: #F7ABAB; + --red-400: #FC6A6A; + --red-500: #E54343; + --red-600: #D03535; + --red-700: #B02525; + --red-800: #8E2323; + --red-900: #792525; + --red-1000: #360C0C; + + --yellow-50: #FDFCE6; + --yellow-100: #FEF9C3; + --yellow-200: #FDF08A; + --yellow-300: #FDDF49; + --yellow-400: #FACC14; + --yellow-500: #E7B008; + --yellow-600: #C78904; + --yellow-700: #A26107; + --yellow-800: #864E0E; + --yellow-900: #723F11; + --yellow-1000: #351D07; + } diff --git a/src/core/ui/style/color/_shadow.scss b/src/core/ui/style/color/_shadow.scss new file mode 100644 index 0000000..3f49001 --- /dev/null +++ b/src/core/ui/style/color/_shadow.scss @@ -0,0 +1,11 @@ +:root { + --shadow-small: 0 0 1px rgba(12, 26, 75, 0.24), 0 3px 8px -1px rgba(50, 50, 71, 0.05); + --shadow-default: 0 0 1px rgba(12, 26, 75, 0.1), 0 4px 20px -2px rgba(50, 50, 71, 0.08); + --shadow-large: 0 0 1px rgba(12, 26, 75, 0.1), 0 10px 16px rgba(20, 37, 63, 0.06); + --shadow-xlarge: 0 0 1px rgba(12, 26, 75, 0.1), 0 20px 24px rgba(20, 37, 63, 0.06); + --shadow-xxlarge: 0 0 1px rgba(12, 26, 75, 0.1), 0 30px 40px rgba(20, 37, 63, 0.08); + + --shadow-pressed: 0 0 0 3px var(--secondary-button-bg); + --shadow-error: 0 0 0 3px rgba(255, 81, 91, 0.14); + --shadow-disabled: inset 0 1px 2px rgba(0, 0, 0, 0.06); +} diff --git a/src/core/ui/style/color/_theme.scss b/src/core/ui/style/color/_theme.scss new file mode 100644 index 0000000..45f0eb0 --- /dev/null +++ b/src/core/ui/style/color/_theme.scss @@ -0,0 +1,63 @@ +// TODO: Define light/dark theme classes when theme is activated + +:root { + --background: var(--gray-100); + + --card-default: var(--white); + + --overlay: rgba(178, 181, 197, 0.5); + + --text-main: var(--gray-700); + --text-gray: var(--gray-500); + --text-gray-light: var(--gray-400); + --text-gray-lightest: var(--gray-300); + + --primary-button-bg: var(--purple-500); + --primary-button-text: var(--white); + --primary-button-hover-text: var(--white); + --primary-button-hover-bg: var(--purple-600); + --primary-button-disabled-bg: var(--gray-200); + --primary-button-disabled-text: var(--gray-400); + + --secondary-button-bg: var(--purple-100); + --secondary-button-text: var(--purple-500); + --secondary-button-hover-bg: var(--purple-200); + --secondary-button-hover-text: var(--purple-500); + --secondary-button-disabled-bg: var(--gray-200); + --secondary-button-disabled-text: var(--gray-400); + + --light-button-bg: var(--white); + --light-button-text: var(--gray-500); + --light-button-hover-bg: var(--white); + --light-button-hover-text: var(--gray-700); + --light-button-disabled-bg: var(--gray-200); + --light-button-disabled-text: var(--gray-400); + + --ghost-button-text: var(--gray-500); + --ghost-button-hover-text: var(--gray-700); + --ghost-button-pressed-bg: var(--purple-100); + --ghost-button-pressed-text: var(--purple-500); + --ghost-button-disabled-text: var(--gray-400); + + --input-bg: var(--white); + --input-border: var(--gray-200); + --input-border-hover: var(--purple-500); + --input-border-error: var(--red-500); + --input-disabled-bg: var(--gray-100); + + --helper-orange-darker: var(--orange-700); + --helper-orange-default: var(--orange-500); + --helper-orange-lighter: var(--orange-200); + --helper-purple-darker: var(--purple-700); + --helper-purple-default: var(--purple-500); + --helper-purple-lighter: var(--purple-100); + --helper-green-darker: var(--green-700); + --helper-green-default: var(--green-500); + --helper-green-lighter: var(--green-100); + --helper-red-darker: var(--red-700); + --helper-red-default: var(--red-500); + --helper-red-lighter: var(--red-200); + --helper-yellow-darker: var(--yellow-700); + --helper-yellow-default: var(--yellow-500); + --helper-yellow-lighter: var(--yellow-200); +} diff --git a/src/core/ui/style/override/_override.scss b/src/core/ui/style/override/_override.scss new file mode 100644 index 0000000..5c28079 --- /dev/null +++ b/src/core/ui/style/override/_override.scss @@ -0,0 +1,37 @@ +@import "../../typography/_typography-mixins.scss"; + +* { + box-sizing: border-box; + + margin: 0; + padding: 0; + + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + + overscroll-behavior: none; + + &:before { + box-sizing: border-box; + } + + &:after { + box-sizing: border-box; + } +} + +ul, +ol, +li { + list-style-type: none; +} + +body { + @include typography--body(); + + background-color: var(--background); +} + +a { + text-decoration: none; +} diff --git a/src/core/ui/style/override/hipo-ui-toolkit/_button.scss b/src/core/ui/style/override/hipo-ui-toolkit/_button.scss new file mode 100644 index 0000000..bff68f5 --- /dev/null +++ b/src/core/ui/style/override/hipo-ui-toolkit/_button.scss @@ -0,0 +1,204 @@ +.button { + --button-bg: var(--primary-button-bg); + --button-height: 48px; + + padding: 14px 16px; + + border: 2px solid transparent; + border-radius: 12px; + + transition: background-color var(--default-animation), color var(--default-animation), + border var(--default-animation), box-shadow var(--default-animation); + + svg path { + transition: fill var(--default-animation); + } +} + +.button--primary { + --button-bg: var(--primary-button-bg); + --button-color: var(--primary-button-text); + + &:hover, + &:focus { + --button-bg: var(--primary-button-hover-bg); + --button-color: var(--primary-button-hover-text); + } + + &.button--is-inactive { + --button-bg: var(--primary-button-disabled-bg); + --button-color: var(--primary-button-disabled-text); + } + + &:active { + border: 2px solid var(--white); + box-shadow: var(--shadow-pressed); + } + + &.button.button--is-inactive.button--is-pending { + --button-bg: var(--primary-button-bg); + --button-color: var(--primary-button-text); + + opacity: 1; + + .simple-loader path { + fill: var(--secondary-button-bg); + } + } +} + +.button--secondary { + --button-bg: var(--secondary-button-bg); + --button-color: var(--secondary-button-text); + + &:hover, + &:focus { + --button-bg: var(--secondary-button-hover-bg); + --button-color: var(--secondary-button-hover-text); + } + + &:active { + border: 2px solid var(--white); + box-shadow: var(--shadow-pressed); + } + + &.button--is-inactive { + --button-bg: var(--secondary-button-disabled-bg); + --button-color: var(--secondary-button-disabled-text); + } + + &.button.button--is-inactive.button--is-pending { + --button-bg: var(--secondary-button-bg); + --button-color: var(--secondary-button-text); + + opacity: 1; + } +} + +.button--light { + --button-bg: var(--light-button-bg); + --button-color: var(--light-button-text); + + box-shadow: var(--shadow-small); + + &:hover, + &:focus { + --button-bg: var(--light-button-hover-bg); + --button-color: var(--light-button-hover-text); + } + + &:active { + border: 2px solid var(--white); + box-shadow: var(--shadow-pressed); + } + + &.button--is-inactive { + --button-bg: var(--light-button-disabled-bg); + --button-color: var(--light-button-disabled-text); + } + + &.button.button--is-inactive.button--is-pending { + --button-bg: var(--light-button-bg); + --button-color: var(--light-button-text); + + opacity: 1; + } +} + +.button--ghost { + --button-bg: transparent; + --button-color: var(--ghost-button-text); + + &:hover, + &:focus { + --button-color: var(--ghost-button-hover-text); + + svg path { + fill: var(--ghost-button-hover-text); + } + } + + &:active { + --button-bg: var(--ghost-button-pressed-bg); + --button-color: var(--ghost-button-pressed-text); + + svg path { + fill: var(--ghost-button-pressed-text); + } + } + + &.button--is-inactive { + --button-color: var(--ghost-button-disabled-text); + + svg path { + fill: var(--ghost-button-disabled-text); + } + } + + &.button.button--is-inactive.button--is-pending { + --button-bg: var(--ghost-button-bg); + --button-color: var(--ghost-button-text); + + opacity: 1; + } +} + +.button--danger { + --button-bg: var(--red-100); + --button-color: var(--helper-red-default); + + &:hover, + &:focus { + --button-bg: var(--red-200); + --button-color: var(--helper-red-darker); + } + + &.button--is-inactive { + --button-bg: var(--primary-button-disabled-bg); + --button-color: var(--primary-button-disabled-text); + } +} + +.button--custom { + --button-bg: unset; + --button-color: unset; + + &.button--small, + &.button--medium, + &.button--large { + --button-height: unset; + + padding: 0; + } +} + +.button--small { + --button-height: 28px; + + padding: 6px 12px; +} + +.button--medium { + --button-height: 40px; + + padding: 10px 16px; +} + +.button--large { + --button-height: 48px; + + padding: 14px 16px; +} + +.button--fluid { + width: 100%; +} + +.link-button { + display: flex; +} + +.button__loader--align-right { + position: absolute; + right: 16px; +} diff --git a/src/core/ui/style/override/hipo-ui-toolkit/_checkbox-input.scss b/src/core/ui/style/override/hipo-ui-toolkit/_checkbox-input.scss new file mode 100644 index 0000000..0b10d50 --- /dev/null +++ b/src/core/ui/style/override/hipo-ui-toolkit/_checkbox-input.scss @@ -0,0 +1,19 @@ +.checkbox-input-label__icon { + --checkbox-focus-bg: var(--primary-button-bg); + --checkbox-border-color: var(--gray-400); + + border-width: 2px; + border-radius: 6px; + + &:hover { + --checkbox-border-color: var(--primary-button-bg); + + transition: none; + } +} + +.checkbox-input-label--is-selected { + .checkbox-input-label__icon { + border: none; + } +} diff --git a/src/core/ui/style/override/hipo-ui-toolkit/_form.scss b/src/core/ui/style/override/hipo-ui-toolkit/_form.scss new file mode 100644 index 0000000..5bd25bd --- /dev/null +++ b/src/core/ui/style/override/hipo-ui-toolkit/_form.scss @@ -0,0 +1,45 @@ +@import "../../../typography/_typography-mixins.scss"; + +.form-field { + position: relative; + + padding: 14px 16px; + + background-color: var(--input-bg); + border: 1px solid var(--input-border); + border-radius: 12px; + + &:focus-within { + border: 1px solid var(--input-border-hover); + box-shadow: var(--shadow-pressed); + } + + .form-field-message--is-error { + color: var(--helper-red-default); + } +} + +.form-field--has-error { + &:focus-within { + border: 1px solid var(--input-border-error); + box-shadow: var(--shadow-error); + } +} + +.form-field__title { + @include typography--caption(); + + margin-bottom: 4px; + + color: var(--text-gray); +} + +.form-field-message--is-error { + @include typography--tiny(); + + position: absolute; + bottom: -24px; + left: 0; + + color: var(--helper-red-default); +} diff --git a/src/core/ui/style/override/hipo-ui-toolkit/_input.scss b/src/core/ui/style/override/hipo-ui-toolkit/_input.scss new file mode 100644 index 0000000..a0bf532 --- /dev/null +++ b/src/core/ui/style/override/hipo-ui-toolkit/_input.scss @@ -0,0 +1,34 @@ +@import "../../../typography/_typography-mixins.scss"; + +.input { + @include typography--button(); + + position: relative; + + height: 20px; + + padding: 0; + + color: var(--text-main); + background-color: var(--input-bg); + border: unset; + + .input-container__icon { + height: 24px; + } + + &::placeholder { + color: var(--text-gray-lightest); + } + + &:focus + .input-container__right-icon { + display: block; + + width: auto; + } + + &:autofill { + background: var(--input-bg); + box-shadow: 0 0 0 100px var(--input-bg) inset; + } +} diff --git a/src/core/ui/style/override/hipo-ui-toolkit/_select.scss b/src/core/ui/style/override/hipo-ui-toolkit/_select.scss new file mode 100644 index 0000000..048b0f9 --- /dev/null +++ b/src/core/ui/style/override/hipo-ui-toolkit/_select.scss @@ -0,0 +1,32 @@ +.select-trigger { + --select-trigger-height: unset; + --select-trigger-bg: unset; + --select-trigger-color: unset; + --select-trigger-border-radius: unset; + + justify-content: unset; + + border: unset; + + &:focus { + border: none; + } +} + +.select-content { + right: 0; + + background-color: var(--card-default); + border: unset; + border-radius: 12px; + box-shadow: var(--shadow-small); +} + +.select-item { + justify-content: unset; + + &:hover { + color: unset; + background-color: unset; + } +} diff --git a/src/core/ui/style/override/hipo-ui-toolkit/_tab.scss b/src/core/ui/style/override/hipo-ui-toolkit/_tab.scss new file mode 100644 index 0000000..5615d83 --- /dev/null +++ b/src/core/ui/style/override/hipo-ui-toolkit/_tab.scss @@ -0,0 +1,56 @@ +@import "../../../typography/_typography-mixins.scss"; + +.tab { + .tab-header-item { + @include typography--subhead(); + + position: relative; + + color: var(--text-gray); + + .list-item__click-wrapper { + padding-bottom: 16px; + + transition: color var(--default-animation); + } + + &:before { + position: absolute; + bottom: -1px; + left: 0; + + width: 100%; + height: 0; + + background-color: transparent; + + content: ""; + + transition: all var(--default-animation); + } + + &--is-active, + &:hover, + &:focus { + color: var(--purple-500); + + &:before { + height: 2px; + + background-color: var(--purple-500); + } + + .list-item__click-wrapper { + color: var(--purple-500); + } + } + } + + &__header { + border-bottom: 1px solid var(--gray-200); + } + + &__body { + margin-top: 32px; + } +} diff --git a/src/core/ui/style/override/hipo-ui-toolkit/_toggle.scss b/src/core/ui/style/override/hipo-ui-toolkit/_toggle.scss new file mode 100644 index 0000000..5ea60e1 --- /dev/null +++ b/src/core/ui/style/override/hipo-ui-toolkit/_toggle.scss @@ -0,0 +1,29 @@ +@import "../../../typography/_typography-mixins.scss"; + +.toggle--is-horizontal { + width: 100%; + + border: none; +} + +.toggle-item { + --toggle-active-color: var(--text-gray); + --toggle-active-bg: transparent; + --toggle-inactive-color: var(--text-gray); + --toggle-inactive-bg: transparent; + + border-radius: 10px; + + transition: background-color var(--default-animation); + + &--is-selected { + --toggle-active-color: var(--secondary-button-text); + --toggle-active-bg: var(--secondary-button-bg); + + pointer-events: none; + } +} + +.toggle-item__label { + @include typography--button(); +} diff --git a/src/core/ui/style/util/animate/_show-up.scss b/src/core/ui/style/util/animate/_show-up.scss new file mode 100644 index 0000000..0d919a2 --- /dev/null +++ b/src/core/ui/style/util/animate/_show-up.scss @@ -0,0 +1,24 @@ +.animation--show-up { + @for $i from 0 through 15 { + &--delay--#{$i} { + --show-up-delay: #{calc($i/6)}s; + } + } + + --show-up-delay: 0s; + + opacity: 0; + + transform: scale(0.98) translateY(24px); + + animation: AnimationShowUp 0.28s ease-out forwards; + animation-delay: var(--show-up-delay); +} + +@keyframes AnimationShowUp { + 100% { + opacity: 1; + + transform: scale(1) translateY(0); + } +} diff --git a/src/core/ui/style/util/animate/_slide-in.scss b/src/core/ui/style/util/animate/_slide-in.scss new file mode 100644 index 0000000..6ed8e57 --- /dev/null +++ b/src/core/ui/style/util/animate/_slide-in.scss @@ -0,0 +1,23 @@ +.animation--slide-in { + @for $i from 0 through 15 { + &--delay--#{$i} { + --slide-in-delay: #{calc($i / 6)}s; + } + } + + --slide-in-delay: 0s; + + opacity: 0; + + transform: translateY(-10%); + animation: AnimationSlideIn 0.3s ease-in-out forwards; + animation-delay: var(--slide-in-delay); +} + +@keyframes AnimationSlideIn { + 100% { + opacity: 1; + + transform: translateY(0%); + } +} diff --git a/src/core/ui/typography/DMSans/DMSans-Bold.ttf b/src/core/ui/typography/DMSans/DMSans-Bold.ttf new file mode 100644 index 0000000..545b747 Binary files /dev/null and b/src/core/ui/typography/DMSans/DMSans-Bold.ttf differ diff --git a/src/core/ui/typography/Milan/Milan-Bold.otf b/src/core/ui/typography/Milan/Milan-Bold.otf new file mode 100644 index 0000000..41c7a21 Binary files /dev/null and b/src/core/ui/typography/Milan/Milan-Bold.otf differ diff --git a/src/core/ui/typography/Milan/Milan-ExtraLight.otf b/src/core/ui/typography/Milan/Milan-ExtraLight.otf new file mode 100644 index 0000000..738c06b Binary files /dev/null and b/src/core/ui/typography/Milan/Milan-ExtraLight.otf differ diff --git a/src/core/ui/typography/Milan/Milan-Medium.otf b/src/core/ui/typography/Milan/Milan-Medium.otf new file mode 100644 index 0000000..11637cc Binary files /dev/null and b/src/core/ui/typography/Milan/Milan-Medium.otf differ diff --git a/src/core/ui/typography/Milan/Milan-Regular.otf b/src/core/ui/typography/Milan/Milan-Regular.otf new file mode 100644 index 0000000..ce7e2bd Binary files /dev/null and b/src/core/ui/typography/Milan/Milan-Regular.otf differ diff --git a/src/core/ui/typography/Milan/Milan-SemiBold.otf b/src/core/ui/typography/Milan/Milan-SemiBold.otf new file mode 100644 index 0000000..5e9e1e0 Binary files /dev/null and b/src/core/ui/typography/Milan/Milan-SemiBold.otf differ diff --git a/src/core/ui/typography/_fonts.scss b/src/core/ui/typography/_fonts.scss new file mode 100644 index 0000000..52b1d72 --- /dev/null +++ b/src/core/ui/typography/_fonts.scss @@ -0,0 +1,47 @@ +@font-face { + font-family: "Milan"; + src: url("./Milan/Milan-Bold.otf") format("opentype"); + + font-weight: 700; + font-style: normal; +} + +@font-face { + font-family: "DMSans"; + src: url("./DMSans/DMSans-Bold.ttf") format("truetype"); + + font-weight: 700; + font-style: normal; +} + +@font-face { + font-family: "Milan"; + src: url("./Milan/Milan-SemiBold.otf") format("opentype"); + + font-weight: 600; + font-style: normal; +} + +@font-face { + font-family: "Milan"; + src: url("./Milan/Milan-Medium.otf") format("opentype"); + + font-weight: 500; + font-style: normal; +} + +@font-face { + font-family: "Milan"; + src: url("./Milan/Milan-Regular.otf") format("opentype"); + + font-weight: 400; + font-style: normal; +} + +@font-face { + font-family: "Milan"; + src: url("./Milan/Milan-ExtraLight.otf") format("opentype"); + + font-weight: 200; + font-style: normal; +} diff --git a/src/core/ui/typography/_typography-mixins.scss b/src/core/ui/typography/_typography-mixins.scss new file mode 100644 index 0000000..c001332 --- /dev/null +++ b/src/core/ui/typography/_typography-mixins.scss @@ -0,0 +1,166 @@ +@mixin typography--display() { + font-family: "DMSans", sans-serif; + font-size: 52px; + font-weight: 700; + line-height: 58px; + letter-spacing: -2.6px; +} + +@mixin typography--h1() { + font-family: "Milan", sans-serif; + font-size: 32px; + font-weight: 600; + line-height: 40px; + letter-spacing: -0.69px; +} + +@mixin typography--h2() { + font-family: "Milan", sans-serif; + font-size: 24px; + font-weight: 600; + line-height: 29px; + letter-spacing: -0.47px; +} + +@mixin typography--h3() { + font-family: "Milan", sans-serif; + font-size: 20px; + font-weight: 500; + line-height: 24px; + letter-spacing: -0.47px; +} + +@mixin typography--subhead() { + font-family: "Milan", sans-serif; + font-size: 18px; + font-weight: 500; + line-height: 24px; + letter-spacing: -0.26px; +} + +@mixin typography--small-subhead() { + font-family: "Milan", sans-serif; + font-size: 16px; + font-weight: 500; + line-height: 24px; + letter-spacing: -0.26px; +} + +@mixin typography--body() { + font-family: "Milan", sans-serif; + font-size: 14px; + font-weight: 400; + line-height: 24px; + letter-spacing: -0.09px; +} + +@mixin typography--medium-body() { + font-family: "Milan", sans-serif; + font-size: 14px; + font-weight: 500; + line-height: 24px; + letter-spacing: -0.09px; +} + +@mixin typography--bold-body() { + font-family: "Milan", sans-serif; + font-size: 14px; + font-weight: 600; + line-height: 24px; + letter-spacing: -0.09px; +} + +@mixin typography--secondary-body() { + font-family: "Milan", sans-serif; + font-size: 13px; + font-weight: 400; + line-height: 20px; + letter-spacing: -0.04px; +} + +@mixin typography--secondary-bold-body() { + font-family: "Milan", sans-serif; + font-size: 13px; + font-weight: 600; + line-height: 20px; + letter-spacing: -0.04px; +} + +@mixin typography--button() { + font-family: "Milan", sans-serif; + font-size: 14px; + font-weight: 500; + line-height: 20px; + letter-spacing: -0.09px; +} + +@mixin typography--secondary-button() { + font-family: "Milan", sans-serif; + font-size: 12px; + font-weight: 600; + line-height: 16px; + letter-spacing: -0.09px; +} + +@mixin typography--caption() { + font-family: "Milan", sans-serif; + font-size: 12px; + font-weight: 500; + line-height: 18px; + letter-spacing: -0.01px; +} + +@mixin typography--tiny() { + font-family: "Milan", sans-serif; + font-size: 12px; + font-weight: 400; + line-height: 18px; + letter-spacing: -0.01px; +} + +@mixin typography--bold-tiny() { + font-family: "Milan", sans-serif; + font-size: 12px; + font-weight: 600; + line-height: 18px; + letter-spacing: -0.01px; +} + +@mixin typography--tagline() { + font-family: "Milan", sans-serif; + font-size: 11px; + font-weight: 600; + line-height: 18px; + letter-spacing: -0.05px; +} + +// Utils + +@mixin is-bold { + font-weight: 700; +} + +// Text Colors +@mixin text-color--main() { + color: var(--text-main); +} + +@mixin text-color--gray() { + color: var(--text-gray); +} + +@mixin text-color--gray-light() { + color: var(--text-gray-light); +} + +@mixin text-color--gray-lightest() { + color: var(--text-gray-lightest); +} + +@mixin text-color--danger() { + color: var(--helper-red-default); +} + +@mixin text-color--success() { + color: var(--helper-green-default); +} diff --git a/src/core/ui/typography/_typography.scss b/src/core/ui/typography/_typography.scss new file mode 100644 index 0000000..341abb6 --- /dev/null +++ b/src/core/ui/typography/_typography.scss @@ -0,0 +1,124 @@ +@import "./typography-mixins"; + +.typography--display { + @include typography--display(); +} + +.typography--h1 { + @include typography--h1(); +} + +.typography--h2 { + @include typography--h2(); +} + +.typography--h3 { + @include typography--h3(); +} + +.typography--subhead { + @include typography--subhead(); +} + +.typography--small-subhead { + @include typography--small-subhead(); +} + +.typography--body { + @include typography--body(); +} + +.typography--medium-body { + @include typography--medium-body(); +} + +.typography--bold-body { + @include typography--bold-body(); +} + +.typography--secondary-body { + @include typography--secondary-body(); +} + +.typography--secondary-bold-body { + @include typography--secondary-bold-body(); +} + +.typography--button { + @include typography--button(); +} + +.typography--secondary-button { + @include typography--secondary-button(); +} + +.typography--caption { + @include typography--caption(); +} + +.typography--tiny { + @include typography--tiny(); +} + +.typography--bold-tiny { + @include typography--bold-tiny(); +} + +.typography--tagline { + @include typography--tagline(); +} + +.text-color { + &--main { + @include text-color--main(); + } + + &--white { + color: var(--white); + } + + &--gray { + @include text-color--gray(); + } + + &--gray-light { + @include text-color--gray-light(); + } + + &--gray-lightest { + @include text-color--gray-lightest(); + } + + &--danger { + @include text-color--danger(); + } + + &--success { + @include text-color--success(); + } + + &--purple { + color: var(--purple-500); + } +} + +.text--centered { + text-align: center; +} + +.text--right { + text-align: right; +} + +.text--uppercase { + text-transform: uppercase; +} + +.text--truncated { + width: 100%; + + overflow: hidden; + + white-space: nowrap; + text-overflow: ellipsis; +} diff --git a/src/core/ui/typography/typographyConstants.ts b/src/core/ui/typography/typographyConstants.ts new file mode 100644 index 0000000..336c0b1 --- /dev/null +++ b/src/core/ui/typography/typographyConstants.ts @@ -0,0 +1,3 @@ +const ALGO_UNIT = "√"; + +export {ALGO_UNIT}; diff --git a/src/core/util/algoExplorer/algoExplorerUtils.ts b/src/core/util/algoExplorer/algoExplorerUtils.ts new file mode 100644 index 0000000..d70f90b --- /dev/null +++ b/src/core/util/algoExplorer/algoExplorerUtils.ts @@ -0,0 +1,38 @@ +import {peraApi} from "../pera/api/peraApi"; + +// TODO: remove this if all details can be seen via pera-explorer +function generateAlgoExplorerLink( + type: "group-id" | "txn-id" | "account-detail" | "asset-detail", + id: string +): string { + let baseURL = `https://testnet.algoexplorer.io/`; + + if (peraApi.network === "mainnet") { + baseURL = baseURL.replace("testnet.", ""); + } + + switch (type) { + case "txn-id": + baseURL = `${baseURL}/tx/${encodeURIComponent(id)}`; + break; + + case "group-id": + baseURL = `${baseURL}/tx/group/${encodeURIComponent(id)}`; + break; + + case "account-detail": + baseURL = `${baseURL}/address/${encodeURIComponent(id)}`; + break; + + case "asset-detail": + baseURL = `${baseURL}/asset/${encodeURIComponent(id)}`; + break; + + default: + break; + } + + return baseURL; +} + +export {generateAlgoExplorerLink}; diff --git a/src/core/util/algod/algod.ts b/src/core/util/algod/algod.ts new file mode 100644 index 0000000..719b756 --- /dev/null +++ b/src/core/util/algod/algod.ts @@ -0,0 +1,60 @@ +import algosdk from "algosdk"; + +import {isProductionBuild} from "../environment/environmentConstants"; +import {DEFAULT_ALGORAND_NODE_PROVIDER_TYPE} from "./algodConstants"; +import {AlgorandNodeProviderType} from "./algodTypes"; +import {getAlgosdkCredentialsForNetwork} from "./algodUtils"; + +class AlgodManager { + client: algosdk.Algodv2; + indexer: algosdk.Indexer; + providerType: AlgorandNodeProviderType; + + constructor({ + network, + providerType + }: { + network: NetworkToggle; + providerType: AlgorandNodeProviderType; + shouldCheckTransactionFee?: boolean; + }) { + const algosdkCredentials = getAlgosdkCredentialsForNetwork(network, providerType); + + this.providerType = providerType; + this.client = new algosdk.Algodv2( + algosdkCredentials.tokens.client, + algosdkCredentials.server.client, + algosdkCredentials.port + ); + this.indexer = new algosdk.Indexer( + algosdkCredentials.tokens.indexer, + algosdkCredentials.server.indexer, + algosdkCredentials.port + ); + } + + updateClient(network: NetworkToggle, providerType: AlgorandNodeProviderType) { + const algosdkCredentials = getAlgosdkCredentialsForNetwork(network, providerType); + + this.providerType = providerType; + this.client = new algosdk.Algodv2( + algosdkCredentials.tokens.client, + algosdkCredentials.server.client, + algosdkCredentials.port + ); + + this.indexer = new algosdk.Indexer( + algosdkCredentials.tokens.indexer, + algosdkCredentials.server.indexer, + algosdkCredentials.port + ); + } +} + +const algod = new AlgodManager({ + network: isProductionBuild ? "mainnet" : "testnet", + providerType: DEFAULT_ALGORAND_NODE_PROVIDER_TYPE +}); + +export default algod; +export {AlgodManager}; diff --git a/src/core/util/algod/algodConstants.ts b/src/core/util/algod/algodConstants.ts new file mode 100644 index 0000000..4cfb83a --- /dev/null +++ b/src/core/util/algod/algodConstants.ts @@ -0,0 +1,36 @@ +import {AlgodCredentials, AlgorandNodeProviderType} from "./algodTypes"; + +export const DEFAULT_ALGORAND_NODE_PROVIDER_TYPE: AlgorandNodeProviderType = "algodev"; +export const MAINNET_NODE_CHAIN_ID = 416001; +export const TESTNET_NODE_CHAIN_ID = 416002; +export const GENESIS_HASH_BY_NETWORK: Record = { + mainnet: "wGHE2Pwdvd7S12BL5FaOP20EGYesN73ktiC1qzkkit8=", + testnet: "SGO1GKSzyE7IEPItTxCByw9x8FmnrCDexi9/cOUJOiI=" +} as const; +export const NETWORK_MISMATCH_MESSAGE = + "Your wallet is connected to a different network to this dApp. Update your wallet to the correct network (MainNet or TestNet) to continue."; + +const ALGOD_CREDENTIALS: AlgodCredentials = { + mainnet: { + algodev: { + clientToken: process.env.REACT_APP_ALGOD_TOKEN, + clientServer: "https://node-mainnet.chain.perawallet.app/", + indexerToken: process.env.REACT_APP_INDEXER_TOKEN, + indexerServer: "https://indexer-mainnet.chain.perawallet.app/", + port: 443, + chainId: MAINNET_NODE_CHAIN_ID + } + }, + testnet: { + algodev: { + clientToken: process.env.REACT_APP_ALGOD_TOKEN, + clientServer: "https://node-testnet.chain.perawallet.app/", + indexerToken: process.env.REACT_APP_INDEXER_TOKEN, + indexerServer: "https://indexer-testnet.chain.perawallet.app/", + port: 443, + chainId: TESTNET_NODE_CHAIN_ID + } + } +}; + +export default ALGOD_CREDENTIALS; diff --git a/src/core/util/algod/algodTypes.ts b/src/core/util/algod/algodTypes.ts new file mode 100644 index 0000000..8c212b1 --- /dev/null +++ b/src/core/util/algod/algodTypes.ts @@ -0,0 +1,26 @@ +export type AlgorandNodeProviderType = "algodev"; + +export type AlgodCredentialShape = Record< + AlgorandNodeProviderType, + Readonly<{ + clientToken: string; + clientServer: string; + indexerToken: string; + indexerServer: string; + port: number; + chainId?: number; + }> +>; + +export interface AlgorandNodeProvider { + type: AlgorandNodeProviderType; + isHealthy: boolean; + title: string; +} + +export interface AlgodCredentials { + mainnet: AlgodCredentialShape; + testnet: AlgodCredentialShape; +} + +export type NetworkToggle = "testnet" | "mainnet"; diff --git a/src/core/util/algod/algodUtils.ts b/src/core/util/algod/algodUtils.ts new file mode 100644 index 0000000..102cdc6 --- /dev/null +++ b/src/core/util/algod/algodUtils.ts @@ -0,0 +1,36 @@ +import ALGOD_CREDENTIALS, { + MAINNET_NODE_CHAIN_ID, + TESTNET_NODE_CHAIN_ID +} from "./algodConstants"; +import {AlgorandNodeProviderType} from "./algodTypes"; + +function getAlgosdkCredentialsForNetwork( + network: NetworkToggle, + credentialType: AlgorandNodeProviderType +) { + const {mainnet: mainnetCredentials, testnet: testnetCredentials} = ALGOD_CREDENTIALS; + const preferredNetworkCredentials = + network === "mainnet" ? mainnetCredentials : testnetCredentials; + + return { + tokens: { + client: preferredNetworkCredentials[credentialType].clientToken, + indexer: preferredNetworkCredentials[credentialType].indexerToken + }, + server: { + client: preferredNetworkCredentials[credentialType].clientServer, + indexer: preferredNetworkCredentials[credentialType].indexerServer + }, + port: preferredNetworkCredentials[credentialType].port + }; +} + +function getChainIdForNetwork(network: NetworkToggle): number { + if (network === "mainnet") { + return MAINNET_NODE_CHAIN_ID; + } + + return TESTNET_NODE_CHAIN_ID; +} + +export {getAlgosdkCredentialsForNetwork, getChainIdForNetwork}; diff --git a/src/core/util/array/arrayUtils.ts b/src/core/util/array/arrayUtils.ts new file mode 100644 index 0000000..ed9a7a1 --- /dev/null +++ b/src/core/util/array/arrayUtils.ts @@ -0,0 +1,92 @@ +// eslint-disable-next-line @typescript-eslint/no-empty-function +export const NO_OP = () => {}; + +function generateNumberArray(length: number): number[] { + return Array.from({length}, (_, index) => index); +} + +/** + * Replace an array item at the provided index with the provided newItem + */ +function replaceAtIndex(items: Item[], index: number, newItem: Item): Item[] { + const newItems = [...items]; + + newItems.splice(index, 1, newItem); + + return newItems; +} + +/** + * Filter out an array of items if they exist within another array by checking with the key provided + */ +function filterOutItemsByKey( + filterOptions: { + items: T[]; + key: keyof T; + }, + array: T[] +): T[] { + const itemsToFilterOut = filterOptions.items.map((item) => item[filterOptions.key]); + + return array.reduce((finalArray, item) => { + if (!itemsToFilterOut.includes(item[filterOptions.key])) { + finalArray.push(item); + } + + return finalArray; + }, []); +} + +/** + * Randomize array items' index + * + * Fisher-Yates Shuffle - https://bost.ocks.org/mike/shuffle/ + */ +function shuffleArray(array: T[]): T[] { + const newArray = [...array]; + let cursorIndex = newArray.length; + let randomIndex: number; + + while (cursorIndex !== 0) { + randomIndex = Math.floor(Math.random() * cursorIndex); + cursorIndex = cursorIndex - 1; + + [newArray[cursorIndex], newArray[randomIndex]] = [ + newArray[randomIndex], + newArray[cursorIndex] + ]; + } + + return newArray; +} + +function sortAlphabetically(array: T[], compareKey: keyof T) { + array.sort((firstItem, secondItem) => { + let order = 0; + + if (firstItem[compareKey] < secondItem[compareKey]) { + order = -1; + } else if (firstItem[compareKey] > secondItem[compareKey]) { + order = 1; + } + + return order; + }); + + return array; +} + +function generateKeyMapFromArray>(array: T[], key: keyof T) { + if (array.length === 0) return {}; + + return Object.fromEntries(array.map((item) => [item[key], item])); +} + +export { + generateKeyMapFromArray, + generateNumberArray, + replaceAtIndex, + filterOutItemsByKey, + shuffleArray, + sortAlphabetically +}; diff --git a/src/core/util/asset/assetUtils.test.ts b/src/core/util/asset/assetUtils.test.ts new file mode 100644 index 0000000..dd4c951 --- /dev/null +++ b/src/core/util/asset/assetUtils.test.ts @@ -0,0 +1,87 @@ +import {getAssetUSDValue} from "./assetUtils"; + +describe("asset utils - getAssetUSDValue", () => { + const cases = [ + { + input: { + asset: { + asset_id: 444035862, + name: "Zone", + logo: null, + unit_name: "ZONE", + fraction_decimals: 6, + total: "1000000000000000", + usd_value: "0.001598920967", + is_verified: true, + verification_tier: "trusted", + explorer_url: "https://explorer.perawallet.app/assets/444035862/", + collectible: null, + creator: { + id: 1, + address: "DSD64N54TOAORLOM77EGKC4N3L55N45WLXUV3I24HZBJLY5YX22VXATHTA", + is_verified_asset_creator: true + } + } as Asset, + amount: 10890000 + }, + output: "0.0174" + }, + { + input: { + asset: { + asset_id: 777628481, + name: "HUMBLE LP - ALGO/USDC", + logo: null, + unit_name: "HMBL2LT", + fraction_decimals: 6, + total: "1000000000000000", + usd_value: "0.898350542496", + is_verified: true, + verification_tier: "trusted", + explorer_url: + "https://explorer.perawallet.app/accounts/SVZS7Q7QMVHZONDHZJHR4564VTMEX3OQ5DSYBWKR5FJFTPZLVG3EZIWC34/", + collectible: null, + creator: { + id: 1, + address: "DSD64N54TOAORLOM77EGKC4N3L55N45WLXUV3I24HZBJLY5YX22VXATHTA", + is_verified_asset_creator: true + } + } as Asset, + amount: 1025450951 + }, + output: "921.2144" + }, + { + input: { + asset: { + asset_id: 470842789, + name: "Defly Token", + logo: null, + unit_name: "DEFLY", + fraction_decimals: 6, + total: "1000000000000000", + usd_value: "0.00342188629", + is_verified: true, + verification_tier: "verified", + explorer_url: "https://explorer.perawallet.app/assets/470842789/", + collectible: null, + creator: { + id: 1, + address: "ZSASGQZ37L5SVV2VSEKBJTSRTNVPV3IJ7NEWM6BRCXY5AZD5HQLLVYU76I", + is_verified_asset_creator: true + } + } as Asset, + amount: 3196035871 + }, + output: "10.9365" + } + ]; + + cases.forEach(({input, output}) => { + it(`should return ${output} for ${input.amount}`, () => { + expect(getAssetUSDValue({amount: input.amount, asset: input.asset})).toStrictEqual( + output + ); + }); + }); +}); diff --git a/src/core/util/asset/assetUtils.tsx b/src/core/util/asset/assetUtils.tsx new file mode 100644 index 0000000..e66868c --- /dev/null +++ b/src/core/util/asset/assetUtils.tsx @@ -0,0 +1,193 @@ +import {ReactComponent as AsaVerifiedIcon} from "../../../core/ui/icons/asa-verified.svg"; +import {ReactComponent as AsaTrustedIcon} from "../../../core/ui/icons/asa-trusted.svg"; +import {ReactComponent as AsaSuspiciousIcon} from "../../../core/ui/icons/asa-suspicious.svg"; + +import {Asset as AlgoSDKAsset} from "algosdk/dist/types/src/client/v2/algod/models/types"; + +import {formatNumber} from "../number/numberUtils"; +import {AccountASA} from "../pera/api/peraApiModels"; +import algod from "../algod/algod"; + +export type NodeAsset = AlgoSDKAsset; + +/** + * Checks if asset is an NFT + */ +function isNFT(asset: Asset): boolean { + return parseFloat(asset.total) === 1; +} + +function isALGO(asset: Asset | AccountASA): boolean { + return asset.name === "ALGO"; +} + +/** + * Checks if asset type is Asset or not + */ +function isAssetType(asset: Asset | AccountASA): asset is Asset { + return (asset as Asset).total !== undefined; +} + +/** + * Calculates max fraction digits that asset can have + * + * @param {{ + * assetDecimals?: number; + * amountInBaseUnits: number; + * }} { + * assetDecimals, + * amountInBaseUnits + * } + * @returns {number} + */ +function getAssetAmountFormatMaxFractionDigits({ + assetDecimals, + amountInBaseUnits +}: { + assetDecimals?: number; + amountInBaseUnits: number; +}) { + let maxFractionDigits = 2; + + if (amountInBaseUnits < 1 && assetDecimals) { + maxFractionDigits = assetDecimals; + } + + return maxFractionDigits; +} + +/** + * Format asset amount using its decimal point + * returns `${formattedAmount} ${unitName}` if unitName is given + * formatter can be passed otherwise formatter with 'compact' notation is used as default + * @param {{ + * amount: number; + * assetDecimals?: number; + * formatter?: ReturnType; + * unitName?: string; + * }} { + * assetDecimals, + * amount, + * formatter, + * unitName + * } + * @returns {string} + */ +function formatAssetAmount({ + assetDecimals, + amount, + formatter, + unitName +}: { + amount: number; + assetDecimals?: number; + formatter?: ReturnType; + unitName?: string; +}) { + const numberFormatter = + formatter || + formatNumber({ + notation: "compact", + maximumFractionDigits: getAssetAmountFormatMaxFractionDigits({ + assetDecimals, + amountInBaseUnits: amount + }), + minimumFractionDigits: 0 + }); + const formattedAmount = numberFormatter(amount); + + return unitName ? `${formattedAmount} ${unitName}` : formattedAmount; +} + +function integerToFractionDecimal(amount: number, fractionDecimals?: number) { + return ( + amount / + // eslint-disable-next-line no-magic-numbers + Math.pow(10, fractionDecimals || 0) + ); +} + +function fractionDecimalToInteger(amount: number, fractionDecimals?: number) { + // eslint-disable-next-line no-magic-numbers + return Math.round(amount * Math.pow(10, fractionDecimals || 0)); +} + +// eslint-disable-next-line no-magic-numbers +function renderVerificationTierIcon(asset: Asset | AccountASA, size = 16) { + let icon; + + switch (asset.verification_tier) { + case "verified": + icon = ; + break; + + case "trusted": + icon = ; + break; + + case "suspicious": + icon = ; + break; + + default: + icon = null; + break; + } + + return icon; +} + +function formatASAAmount( + asset: AccountASA, + options?: {assetAmount: number; inBaseUnits: boolean} +) { + let amount = integerToFractionDecimal(Number(asset.amount), asset.fraction_decimals); + + if (options?.assetAmount) { + amount = options.inBaseUnits + ? fractionDecimalToInteger(options.assetAmount) + : options.assetAmount; + } + + return formatAssetAmount({ + amount, + formatter: formatNumber({ + // eslint-disable-next-line no-magic-numbers + maximumFractionDigits: asset.fraction_decimals || 2, + minimumFractionDigits: 2 + }), + assetDecimals: asset.fraction_decimals, + unitName: asset.unit_name + }); +} + +function getTransactionAssetsInfoFromNode(transactionAssetIndexes: number[]) { + return Promise.all( + transactionAssetIndexes.map( + (assetIndex) => algod.client.getAssetByID(assetIndex).do() as unknown as NodeAsset + ) + ); +} + +function getAssetUSDValue({amount, asset}: {amount: number; asset: Asset}) { + return formatNumber({ + minimumFractionDigits: 2, + maximumFractionDigits: 4 + })( + integerToFractionDecimal(amount, asset.fraction_decimals) * Number(asset?.usd_value) + ); +} + +export { + isNFT, + isALGO, + isAssetType, + getAssetAmountFormatMaxFractionDigits, + formatAssetAmount, + renderVerificationTierIcon, + integerToFractionDecimal, + fractionDecimalToInteger, + formatASAAmount, + getTransactionAssetsInfoFromNode, + getAssetUSDValue +}; diff --git a/src/core/util/blob/blobUtils.ts b/src/core/util/blob/blobUtils.ts new file mode 100644 index 0000000..9dd102d --- /dev/null +++ b/src/core/util/blob/blobUtils.ts @@ -0,0 +1,34 @@ +import algosdk, {Transaction} from "algosdk"; + +function base64ToUint8Array(data: string) { + return Uint8Array.from(window.atob(data), (value) => value.charCodeAt(0)); +} + +function uint8ArrayToBase64(data: Uint8Array): string { + return Buffer.from(data).toString("base64"); +} + +function uint8ArrayToString(data: Uint8Array): string { + return Buffer.from(data).toString(); +} + +function stringToUint8Array(data: string): Uint8Array { + return Uint8Array.from(Buffer.from(data)); +} + +function stringBytesToUint8Array(data: string): Uint8Array { + return new Uint8Array(data.split(",").map(Number)); +} + +function encodeUnsignedTransactionInBase64(txn: Transaction): string { + return Buffer.from(algosdk.encodeUnsignedTransaction(txn)).toString("base64"); +} + +export { + base64ToUint8Array, + uint8ArrayToBase64, + uint8ArrayToString, + stringToUint8Array, + stringBytesToUint8Array, + encodeUnsignedTransactionInBase64 +}; diff --git a/src/core/util/device/deviceUtils.ts b/src/core/util/device/deviceUtils.ts new file mode 100644 index 0000000..1472aee --- /dev/null +++ b/src/core/util/device/deviceUtils.ts @@ -0,0 +1,33 @@ +function isNavigatorAvailable() { + return typeof navigator !== "undefined"; +} + +function isSmallMobileDevice() { + return ( + isNavigatorAvailable() && + ((/Mobile/i.test(navigator.userAgent) && /Android/i.test(navigator.userAgent)) || + /iPhone/i.test(navigator.userAgent)) + ); +} + +function isFirefoxPrivate(): Promise { + const isUserAgentFirefox = !!navigator.userAgent.match(/Firefox/i); + + return new Promise((resolve) => { + if (!isUserAgentFirefox) resolve(false); + + const temporaryDBName = "firefox-private-test"; + const db = indexedDB.open(temporaryDBName); + + db.onerror = function () { + resolve(true); + }; + + db.onsuccess = function () { + indexedDB.deleteDatabase(temporaryDBName); + resolve(false); + }; + }); +} + +export {isSmallMobileDevice, isFirefoxPrivate}; diff --git a/src/core/util/environment/environmentConstants.ts b/src/core/util/environment/environmentConstants.ts new file mode 100644 index 0000000..bb65b7f --- /dev/null +++ b/src/core/util/environment/environmentConstants.ts @@ -0,0 +1,7 @@ +const isProductionBuild = process.env.REACT_APP_BUILD_ENVIRONMENT === "production"; +const isStagingBuild = process.env.REACT_APP_BUILD_ENVIRONMENT === "staging"; +const isLocalBuild = process.env.REACT_APP_BUILD_ENVIRONMENT === "local"; + +const isOnStagingOrLocal = isLocalBuild || isStagingBuild; + +export {isProductionBuild, isStagingBuild, isLocalBuild, isOnStagingOrLocal}; diff --git a/src/core/util/hook/formito/formitoStateReducer.ts b/src/core/util/hook/formito/formitoStateReducer.ts new file mode 100644 index 0000000..d4e3319 --- /dev/null +++ b/src/core/util/hook/formito/formitoStateReducer.ts @@ -0,0 +1,34 @@ +type FormitoReducerAction = + | { + type: "SET_FORM_VALUE"; + payload: Partial; + } + | {type: "RESET_FORM_STATE"; state: T}; + +function formitoStateReducer(state: T, action: FormitoReducerAction): T { + let newState = state; + + switch (action.type) { + case "SET_FORM_VALUE": { + newState = { + ...state, + ...action.payload + }; + + break; + } + + case "RESET_FORM_STATE": { + newState = action.state; + break; + } + + default: + break; + } + + return newState; +} + +export default formitoStateReducer; +export type {FormitoReducerAction}; diff --git a/src/core/util/hook/formito/useFormito.tsx b/src/core/util/hook/formito/useFormito.tsx new file mode 100644 index 0000000..122e00b --- /dev/null +++ b/src/core/util/hook/formito/useFormito.tsx @@ -0,0 +1,33 @@ +import {Reducer, useReducer} from "react"; + +import formitoStateReducer, {FormitoReducerAction} from "./formitoStateReducer"; + +function useFormito(initialState: T) { + const [formitoState, dispatchFormitoAction] = useReducer< + Reducer> + >(formitoStateReducer, initialState); + + return { + formitoState, + dispatchFormitoAction + }; +} + +export default useFormito; + +/* USAGE: + const initialLoginFormState = { + email: "", + password: "" + rememberMe: false + }; + + const {formitoState, dispatchFormitoAction} = useFormito(initialLoginFormState); + + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + [currentTarget.name]: currentTarget.value + } + }) +*/ diff --git a/src/core/util/hook/useCheckForInactivity.tsx b/src/core/util/hook/useCheckForInactivity.tsx new file mode 100644 index 0000000..9e496fe --- /dev/null +++ b/src/core/util/hook/useCheckForInactivity.tsx @@ -0,0 +1,47 @@ +import {useCallback, useEffect, useRef} from "react"; + +import {useAppContext} from "../../app/AppContext"; +import {MINUTE_IN_MS} from "../time/timeConstants"; +import useEventListener from "./useEventListener"; +import useLockApp from "./useLockApp"; + +// eslint-disable-next-line no-magic-numbers +const IDLE_TIMEOUT = 5 * MINUTE_IN_MS; +const MOUSE_MOVE_DEBOUNCE = 100; + +function useCheckForInactivity() { + const documentRef = useRef(document); + const timeoutRef = useRef(); + const mouseMoveRef = useRef(); + const { + state: {masterkey} + } = useAppContext(); + const lockApp = useLockApp(); + + const resetIdleTimer = useCallback(() => { + if (timeoutRef.current) clearTimeout(timeoutRef.current); + + // set the timer + timeoutRef.current = setTimeout(lockApp, IDLE_TIMEOUT); + }, [lockApp]); + + useEffect(() => { + // do not start idle check if user did not enter passcode + if (!masterkey) return; + + resetIdleTimer(); + }, [masterkey, resetIdleTimer]); + + useEventListener("mousemove", debouncedOnMouseMove, documentRef); + + function debouncedOnMouseMove() { + // do not start mouse move listener if user did not enter passcode + if (!masterkey) return; + + if (mouseMoveRef.current) clearTimeout(mouseMoveRef.current); + + mouseMoveRef.current = setTimeout(resetIdleTimer, MOUSE_MOVE_DEBOUNCE); + } +} + +export default useCheckForInactivity; diff --git a/src/core/util/hook/useEventListener.tsx b/src/core/util/hook/useEventListener.tsx new file mode 100644 index 0000000..b01a70b --- /dev/null +++ b/src/core/util/hook/useEventListener.tsx @@ -0,0 +1,59 @@ +// reference: https://usehooks-ts.com/react-hook/use-event-listener +import {RefObject, useEffect, useRef} from "react"; + +function useEventListener( + eventName: K, + handler: (event: WindowEventMap[K]) => void +): void; + +function useEventListener< + K extends keyof HTMLElementEventMap, + T extends HTMLElement = HTMLDivElement +>( + eventName: K, + handler: (event: HTMLElementEventMap[K]) => void, + element: RefObject +): void; + +function useEventListener( + eventName: K, + handler: (event: DocumentEventMap[K]) => void, + element: RefObject, + options?: boolean | AddEventListenerOptions +): void; + +function useEventListener< + KW extends keyof WindowEventMap, + KH extends keyof HTMLElementEventMap, + T extends HTMLElement | void = void +>( + eventName: KW | KH, + handler: (event: WindowEventMap[KW] | HTMLElementEventMap[KH] | Event) => void, + element?: RefObject +) { + // Create a ref that stores handler + const savedHandler = useRef(handler); + + useEffect(() => { + savedHandler.current = handler; + }, [handler]); + + useEffect(() => { + const targetElement: T | Window = element?.current || window; + + if (!(targetElement && targetElement.addEventListener)) { + return; + } + + const eventListener: typeof handler = (event) => savedHandler.current(event); + + targetElement.addEventListener(eventName, eventListener); + + // eslint-disable-next-line consistent-return + return () => { + targetElement.removeEventListener(eventName, eventListener); + }; + }, [eventName, element]); +} + +export default useEventListener; diff --git a/src/core/util/hook/useInterval.tsx b/src/core/util/hook/useInterval.tsx new file mode 100644 index 0000000..8e965da --- /dev/null +++ b/src/core/util/hook/useInterval.tsx @@ -0,0 +1,78 @@ +import {useEffect, useRef, useState} from "react"; + +export interface IntervalHookOptions { + shouldStartInterval?: boolean; + // Normally, callback will be called at the end of first interval for the first time, + // this option overrides it to run as soon as the interval starts + shouldRunCallbackAtStart?: boolean; + refreshLimit?: number; +} + +function useInterval( + callback: VoidFunction, + delay: number, + options?: IntervalHookOptions +) { + const timerRef = useRef(); + const { + shouldStartInterval = true, + shouldRunCallbackAtStart = false, + refreshLimit + } = options || {}; + const refreshCountRef = useRef(0); + const savedCallback = useRef(); + const [isIntervalRunning, setStartInterval] = useState(shouldStartInterval); + + useEffect(() => { + savedCallback.current = callback; + }, [callback]); + + useEffect(() => { + if (isIntervalRunning && shouldRunCallbackAtStart && savedCallback.current) { + savedCallback.current(); + } + }, [shouldRunCallbackAtStart, isIntervalRunning]); + + useEffect(() => { + if (isIntervalRunning) { + timerRef.current = setInterval(tick, delay); + } + + return () => { + if (timerRef.current) { + clearTimer(); + } + }; + + function tick() { + if (refreshLimit && refreshCountRef?.current >= refreshLimit) { + setStartInterval(false); + clearTimer(); + } + + savedCallback.current!(); + refreshCountRef.current += 1; + } + }, [delay, refreshLimit, isIntervalRunning]); + + function clearTimer() { + refreshCountRef.current = 0; + clearInterval(timerRef.current); + } +} + +/* USAGE: + + useInterval( + () => setShouldGetDocumentPackage(true), + GET_DOCUMENT_PACKAGE_REQUEST_POLLING_INTERVAL, + { + shouldStartInterval: isCreateDocumentPackageRequested, + shouldRunCallbackAtStart: true, + refreshLimit:10 + } + ); + +*/ + +export default useInterval; diff --git a/src/core/util/hook/useKeyboardShortcut.tsx b/src/core/util/hook/useKeyboardShortcut.tsx new file mode 100644 index 0000000..aca101f --- /dev/null +++ b/src/core/util/hook/useKeyboardShortcut.tsx @@ -0,0 +1,44 @@ +import useEventListener from "./useEventListener"; +export const COMBINATOR_KEYS = { + SHIFT: "shiftKey", + CTRL: "ctrlKey", + META: "metaKey" +} as const; + +// keyboardConstants.ts +export const KEYBOARD_EVENT_KEY = { + K: "k", + G: "g", + SLASH: "/", + + // those are not used right now but we'll need them in the future + ENTER: "Enter", + ESCAPE: "Escape", + ARROW_UP: "ArrowUp", + ARROW_DOWN: "ArrowDown", + ARROW_LEFT: "ArrowLeft", + ARROW_RIGHT: "ArrowRight" +} as const; + +// useKeyboardShortcut.tsx +interface UseKeyboardShortcutItem { + key: ValueOf; + callback: VoidFunction; + options?: {combinatorKey?: ValueOf}; +} + +function useKeyboardShortcut(shortcuts: UseKeyboardShortcutItem[]) { + useEventListener("keydown", (event) => { + shortcuts.forEach(({key, options, callback}) => { + if (options?.combinatorKey && !event[options.combinatorKey]) { + return; + } + + if (key === event.key) { + callback(); + } + }); + }); +} + +export default useKeyboardShortcut; diff --git a/src/core/util/hook/useLocationWithState.tsx b/src/core/util/hook/useLocationWithState.tsx new file mode 100644 index 0000000..a19af3e --- /dev/null +++ b/src/core/util/hook/useLocationWithState.tsx @@ -0,0 +1,11 @@ +import {Location, useLocation} from "react-router"; + +type LocationWithState = Location & {state?: T}; + +function useLocationWithState(): Partial { + const location = useLocation() as LocationWithState; + + return location.state || {}; +} + +export default useLocationWithState; diff --git a/src/core/util/hook/useLockApp.tsx b/src/core/util/hook/useLockApp.tsx new file mode 100644 index 0000000..3a5b904 --- /dev/null +++ b/src/core/util/hook/useLockApp.tsx @@ -0,0 +1,46 @@ +import {useEffect} from "react"; + +import {useAppContext} from "../../app/AppContext"; +import webStorage, {STORED_KEYS} from "../storage/web/webStorage"; +import {useModalDispatchContext} from "../../../component/modal/context/ModalContext"; + +function useLockApp() { + const {dispatch: dispatchAppState} = useAppContext(); + const dispatchModalStateAction = useModalDispatchContext(); + + useEffect(() => { + window.addEventListener("storage", triggerStorageEvent); + + return () => { + window.removeEventListener("storage", triggerStorageEvent); + }; + + function triggerStorageEvent(event: StorageEvent) { + if (event.key === STORED_KEYS.LOCK_TABS) { + dispatchAppState({ + type: "SET_MASTERKEY", + masterkey: undefined + }); + } + } + }, [dispatchAppState]); + + function lock() { + indexedDB.deleteDatabase("pera-wallet-assets"); + + webStorage.local.setItem(STORED_KEYS.LOCK_TABS, JSON.stringify(new Date())); + webStorage.local.removeItem(STORED_KEYS.STALE_PORTFOLIO_OVERVIEW); + + dispatchAppState({ + type: "SET_MASTERKEY", + masterkey: undefined + }); + + // close and remove modals when App locked + dispatchModalStateAction({type: "CLEAN_MODAL_STACK"}); + } + + return lock; +} + +export default useLockApp; diff --git a/src/core/util/hook/useOnClickOutside.tsx b/src/core/util/hook/useOnClickOutside.tsx new file mode 100644 index 0000000..49bbfea --- /dev/null +++ b/src/core/util/hook/useOnClickOutside.tsx @@ -0,0 +1,33 @@ +import {useEffect, useRef} from "react"; + +function useOnClickOutside(element: HTMLElement | null, callback: () => void) { + const callbackRef = useRef(callback); + + useEffect(() => { + callbackRef.current = callback; + }, [callback]); + + useEffect(() => { + function eventListener(event: MouseEvent | TouchEvent) { + if ( + !element || + !(event.target instanceof HTMLElement) || + element.contains(event.target) + ) { + return; + } + + callbackRef.current(); + } + + document.addEventListener("mousedown", eventListener); + document.addEventListener("touchstart", eventListener); + + return () => { + document.removeEventListener("mousedown", eventListener); + document.removeEventListener("touchstart", eventListener); + }; + }, [element]); +} + +export default useOnClickOutside; diff --git a/src/core/util/hook/useOnUnmount.tsx b/src/core/util/hook/useOnUnmount.tsx new file mode 100644 index 0000000..8ba4fa5 --- /dev/null +++ b/src/core/util/hook/useOnUnmount.tsx @@ -0,0 +1,15 @@ +import {useLayoutEffect} from "react"; + +function useOnUnmount(callback?: VoidFunction) { + // eslint-disable-next-line arrow-body-style + useLayoutEffect(() => { + return () => { + if (callback) { + callback(); + } + }; + // eslint-disable-next-line react-hooks/exhaustive-deps + }, []); +} + +export default useOnUnmount; diff --git a/src/core/util/hook/useRegisterDevice.tsx b/src/core/util/hook/useRegisterDevice.tsx new file mode 100644 index 0000000..5299a44 --- /dev/null +++ b/src/core/util/hook/useRegisterDevice.tsx @@ -0,0 +1,120 @@ +import {useEffect, useMemo, useRef} from "react"; + +import {useAppContext} from "../../app/AppContext"; +import {PeraApi, peraApi} from "../pera/api/peraApi"; +import {PERA_API_CONFIG} from "../pera/api/peraApiConstants"; +import {DeviceInformation} from "../pera/api/peraApiModels"; +import webStorage, {STORED_KEYS} from "../storage/web/webStorage"; +import {encryptedWebStorageUtils} from "../storage/web/webStorageUtils"; + +function useRegisterDevice() { + const registerDeviceRef = useRef(false); + const updateDeviceRef = useRef(false); + const { + state: {masterkey, accounts, preferredNetwork}, + dispatch: dispatchAppState + } = useAppContext(); + const userAccountsRef = useRef(accounts ? Object.keys(accounts).length : 0); + const toggledNetwork = preferredNetwork === "mainnet" ? "testnet" : "mainnet"; + const toggledNetworkApi = useMemo( + () => new PeraApi(PERA_API_CONFIG, toggledNetwork), + [toggledNetwork] + ); + const {mainnetApi, testnetApi} = { + mainnetApi: preferredNetwork === "mainnet" ? peraApi : toggledNetworkApi, + testnetApi: preferredNetwork === "mainnet" ? toggledNetworkApi : peraApi + }; + + // register device for testnet/mainnet + // it is triggered first when user creates passcode + useEffect(() => { + const isDeviceInfoExist = Boolean(webStorage.local.getItem(STORED_KEYS.DEVICE_INFO)); + + (async () => { + if (isDeviceInfoExist || !masterkey) return; + + try { + const [ + {id: deviceIdMainnet, auth_token: authTokenMainnet}, + {id: deviceIdTestnet, auth_token: authTokenTestnet} + ] = await Promise.all([mainnetApi.registerDevice(), testnetApi.registerDevice()]); + + const device = { + mainnet: {deviceId: deviceIdMainnet, token: authTokenMainnet}, + testnet: {deviceId: deviceIdTestnet, token: authTokenTestnet} + }; + + await encryptedWebStorageUtils(masterkey).set(STORED_KEYS.DEVICE_INFO, device); + + registerDeviceRef.current = true; + } catch (error) { + console.error(error); + } + })(); + }, [ + dispatchAppState, + mainnetApi, + masterkey, + preferredNetwork, + testnetApi, + toggledNetwork + ]); + + // update device info for testnet/mainnet + // needed for BE purposes + useEffect(() => { + (async () => { + let shouldSkipUpdate = + updateDeviceRef.current || registerDeviceRef.current || !masterkey; + const userAccountCount = accounts ? Object.keys(accounts).length : 0; + + if (userAccountsRef.current !== userAccountCount) { + shouldSkipUpdate = false; + + userAccountsRef.current = userAccountCount; + } + + if (shouldSkipUpdate || !masterkey) return; + + try { + const deviceInfo = (await encryptedWebStorageUtils(masterkey).get( + STORED_KEYS.DEVICE_INFO + )) as DeviceInfo; + + if (!deviceInfo || !accounts) return; + + const { + mainnet: {token: tokenMainnet}, + testnet: {token: tokenTestnet} + } = deviceInfo; + const deviceAccounts: DeviceInformation["accounts"] = Object.values(accounts).map( + (account) => ({ + address: account.address, + is_watch_account: false, + receive_notifications: false + }) + ); + + if (deviceAccounts.length > 0) { + Promise.all([ + mainnetApi.updateDevice({ + accounts: deviceAccounts, + authToken: tokenMainnet + }), + testnetApi.updateDevice({ + accounts: deviceAccounts, + authToken: tokenTestnet + }) + ]); + } + } catch (error) { + console.error(error); + } finally { + // in case of error, try next cold start + updateDeviceRef.current = true; + } + })(); + }, [accounts, mainnetApi, masterkey, preferredNetwork, testnetApi]); +} + +export default useRegisterDevice; diff --git a/src/core/util/hook/useScroll.tsx b/src/core/util/hook/useScroll.tsx new file mode 100644 index 0000000..b0c59d9 --- /dev/null +++ b/src/core/util/hook/useScroll.tsx @@ -0,0 +1,68 @@ +import {useRef, useLayoutEffect, useEffect, RefObject} from "react"; + +export interface ScrollHookOptions { + ref?: RefObject; + delay?: null | number; +} + +const DEFAULT_DELAY = 200; + +function useScroll(effect: VoidFunction, options?: ScrollHookOptions) { + const {delay = DEFAULT_DELAY, ref} = options || {}; + const effectRef = useRef(effect); + + useLayoutEffect(() => { + effectRef.current = effect; + }, [effect]); + + useEffect(() => { + let element: HTMLElement | Window = window; + let timeoutId: any; + + if (ref?.current) { + element = ref.current; + } + + element?.addEventListener("scroll", handleScroll); + + return () => { + element?.removeEventListener("scroll", handleScroll); + clearTimeout(timeoutId); + }; + + function handleScroll() { + if (typeof delay === "number") { + if (!timeoutId) { + timeoutId = setTimeout(runCallback, delay); + } + } else { + runCallback(); + } + } + + function runCallback() { + effectRef.current(); + timeoutId = undefined; + } + }, [delay, ref]); +} + +export default useScroll; + +/* USAGE: + const [scrollPosition, setScrollPosition] = useState({x:0, y: 0}); + const containerRef = useRef(null); + + useScroll({ref: containerRef}, () => { + setScrollPosition({ + x: Math.round(containerRef.current?.scrollTop), + y: Math.round(containerRef.current?.scrollLeft) + }); + }); + + return ( +
    + ... +
    + ) +*/ diff --git a/src/core/util/hook/useSetPageTitle.tsx b/src/core/util/hook/useSetPageTitle.tsx new file mode 100644 index 0000000..2721e66 --- /dev/null +++ b/src/core/util/hook/useSetPageTitle.tsx @@ -0,0 +1,9 @@ +import {useLayoutEffect} from "react"; + +function useSetPageTitle(title: string) { + useLayoutEffect(() => { + document.title = `${title} | Pera Wallet`; + }, [title]); +} + +export default useSetPageTitle; diff --git a/src/core/util/hook/useTellerListener.ts b/src/core/util/hook/useTellerListener.ts new file mode 100644 index 0000000..a1feae9 --- /dev/null +++ b/src/core/util/hook/useTellerListener.ts @@ -0,0 +1,17 @@ +import {useEffect} from "react"; + +import appTellerManager, {PeraTeller} from "../../app/teller/appTellerManager"; + +function useTellerListener( + onReceiveMessage: (event: MessageEvent>) => void +) { + useEffect(() => { + appTellerManager.setupListener({ + onReceiveMessage + }); + + return () => appTellerManager.close(); + }, [onReceiveMessage]); +} + +export default useTellerListener; diff --git a/src/core/util/image/imageUtils.ts b/src/core/util/image/imageUtils.ts new file mode 100644 index 0000000..6c1f7d5 --- /dev/null +++ b/src/core/util/image/imageUtils.ts @@ -0,0 +1,18 @@ +import {AccountASA} from "../pera/api/peraApiModels"; +import {generatePrismUrl} from "../prism/prismUtils"; + +function getAssetImgSrc(asset: Asset | AccountASA, width?: number, height?: number) { + const imgSrc = asset.collectible?.primary_image || asset.logo; + + return imgSrc + ? // eslint-disable-next-line no-magic-numbers + generatePrismUrl({width: width || 96, height: height || 96, quality: 70})(imgSrc) + : ""; +} + +function getAssetPlaceholderContent(asset: Asset): string { + // eslint-disable-next-line no-magic-numbers + return asset.name.substring(0, 2).toUpperCase(); +} + +export {getAssetImgSrc, getAssetPlaceholderContent}; diff --git a/src/core/util/model/peraWalletModel.ts b/src/core/util/model/peraWalletModel.ts new file mode 100644 index 0000000..0b652d8 --- /dev/null +++ b/src/core/util/model/peraWalletModel.ts @@ -0,0 +1,79 @@ +import {Transaction} from "algosdk"; + +export interface SignerTransaction { + txn: Transaction; + + /** + * Optional authorized address used to sign the transaction when + * the account is rekeyed. Also called the signor/sgnr. + */ + authAddr?: string; + + /** + * Optional multisig metadata used to sign the transaction + */ + msig?: PeraWalletMultisigMetadata; + + /** + * Optional list of addresses that must sign the transactions. + * Wallet skips to sign this txn if signers is empty array. + * If undefined, wallet tries to sign it. + */ + signers?: string[]; + + /** + * Optional message explaining the reason of the transaction + */ + message?: string; +} + +/** + * Options for creating and using a multisignature account. + */ +export interface PeraWalletMultisigMetadata { + /** + * Multisig version. + */ + version: number; + + /** + * Multisig threshold value. Authorization requires a subset of + * signatures, equal to or greater than the threshold value. + */ + threshold: number; + + /** + * List of Algorand addresses of possible signers for this + * multisig. Order is important. + */ + addrs: string[]; +} + +export interface PeraWalletTransaction { + /** + * Base64 encoding of the canonical msgpack encoding of a + * Transaction. + */ + txn: string; + + /** + * Optional authorized address used to sign the transaction when + * the account is rekeyed. Also called the signor/sgnr. + */ + authAddr?: string; + + /** + * Optional multisig metadata used to sign the transaction + */ + msig?: PeraWalletMultisigMetadata; + + /** + * Optional list of addresses that must sign the transactions + */ + signers?: string[]; + + /** + * Optional message explaining the reason of the transaction + */ + message?: string; +} diff --git a/src/core/util/nacl/naclUtils.ts b/src/core/util/nacl/naclUtils.ts new file mode 100644 index 0000000..6bce4cf --- /dev/null +++ b/src/core/util/nacl/naclUtils.ts @@ -0,0 +1,109 @@ +import nacl from "tweetnacl"; +import scrypt from "scrypt-async"; + +import { + uint8ArrayToBase64, + base64ToUint8Array, + stringToUint8Array, + stringBytesToUint8Array, + uint8ArrayToString +} from "../blob/blobUtils"; + +const NONCE_SK_SEPARATOR = "**"; +const PASSWORD_SALT = "7376f7d53ab818f03ba381cedad3940b"; + +function generateNonce() { + return nacl.randomBytes(nacl.secretbox.nonceLength); +} + +function hashPassword(password: string): string { + return uint8ArrayToBase64(nacl.hash(stringToUint8Array(password))); +} + +function generateKeyDerivation(password: string): Promise { + return new Promise((resolve) => { + scrypt( + // @ts-ignore Argument of type 'string' is not assignable to parameter of type 'number[]' + // it's actually typed correctly but the compiler doesn't know + stringToUint8Array(password), + PASSWORD_SALT, + { + N: 16384, + r: 8, + p: 1, + dkLen: 16, + encoding: "hex" + }, + (derivedKey: string) => { + resolve(derivedKey); + } + ); + }); +} + +async function encryptSK(message: Uint8Array, key: string) { + try { + const password = await generateKeyDerivation(key); + const nonce = generateNonce(); + const secretbox = nacl.secretbox(message, nonce, stringToUint8Array(password)); + + return `${uint8ArrayToBase64(nonce)}${NONCE_SK_SEPARATOR}${uint8ArrayToBase64( + secretbox + )}`; + } catch (error) { + throw new Error("Encryption Error"); + } +} + +async function decryptSK( + sk: string, + key: string, + options?: undefined +): Promise; +async function decryptSK( + sk: string, + key: string, + options?: {stringify: true} +): Promise; +async function decryptSK( + sk: string, + key: string, + options?: {stringify: boolean} +): Promise { + try { + const password = await generateKeyDerivation(key); + const [nonce, secretbox] = sk.split(NONCE_SK_SEPARATOR); + + const decryptedSK = nacl.secretbox.open( + base64ToUint8Array(secretbox), + base64ToUint8Array(nonce), + stringToUint8Array(password) + ); + + if (!decryptedSK) throw new Error("Decryption Error"); + + return options?.stringify ? uint8ArrayToString(decryptedSK) : decryptedSK; + } catch (error) { + throw new Error("Decryption Error"); + } +} + +/** + * Decrypts Account Backup + * returns null in case of decryption error + * + * @param {string} backup stringified (Uint8Array[nonce] + uint8Array[secretbox]) + * @param {Uint8Array} key / 32 bytes long Uint8Array + * @returns {Uint8Array | null} + */ +function decryptAccountBackup(backup: string, key: Uint8Array): Uint8Array | null { + const encryptedContent = stringBytesToUint8Array(backup); + const [nonce, secretbox] = [ + encryptedContent.slice(0, nacl.secretbox.nonceLength), + encryptedContent.slice(nacl.secretbox.nonceLength) + ]; + + return nacl.secretbox.open(secretbox, nonce, key); +} + +export {encryptSK, decryptSK, hashPassword, generateNonce, decryptAccountBackup}; diff --git a/src/core/util/number/numberConstants.ts b/src/core/util/number/numberConstants.ts new file mode 100644 index 0000000..1348945 --- /dev/null +++ b/src/core/util/number/numberConstants.ts @@ -0,0 +1,3 @@ +const DEFAULT_DECIMAL_SEPARATOR = "."; + +export {DEFAULT_DECIMAL_SEPARATOR}; diff --git a/src/core/util/number/numberUtils.ts b/src/core/util/number/numberUtils.ts new file mode 100644 index 0000000..b092da9 --- /dev/null +++ b/src/core/util/number/numberUtils.ts @@ -0,0 +1,134 @@ +import algosdk from "algosdk"; + +export type FormatNumberOptions = Omit & { + style?: Intl.NumberFormatPartTypes | "percent"; + locale?: string; +}; + +/** + * A higher-order function that uses Intl.NumberFormat behind the scenes to format a number + * @param {Object} providedOptions - + * @param {string} providedOptions.locale - Passed as first argument to the Intl.NumberFormat. Defaults to one of [navigator.language, "en-GB"] or respects provided locale from the call-site + * @returns {function} Function + */ +function formatNumber(providedOptions: FormatNumberOptions = {}) { + const {locale, ...otherOptions} = providedOptions; + let options = otherOptions; + const isCurrencyFormatting = options.style === "currency"; + const isCompactNotation = options.notation === "compact"; + + if (isCompactNotation) { + options = { + maximumFractionDigits: 2, + minimumFractionDigits: 0, + ...otherOptions + }; + } else if (isCurrencyFormatting) { + options = { + currency: "USD", + maximumFractionDigits: 2, + minimumFractionDigits: 0, + // "narrowSymbol" prevents showing explicit currency symbols, such as "US$" or "CA$" + currencyDisplay: "narrowSymbol", + ...otherOptions + }; + } else { + options = { + maximumFractionDigits: 5, + minimumFractionDigits: 2, + style: "decimal", + ...otherOptions + }; + } + + let numberFormatter: { + format: (x: number | bigint) => string; + }; + + try { + numberFormatter = new Intl.NumberFormat(locale || "en-US", options); + } catch (error) { + numberFormatter = { + format(x: number | bigint) { + return x.toLocaleString(); + } + }; + + if (isCurrencyFormatting) { + // currencyDisplay: "narrowSymbol" option is not supported by some browsers, try by providing "symbol" + try { + options.currencyDisplay = "symbol"; + numberFormatter = new Intl.NumberFormat(locale || "en-US", options); + } catch (currencyFormattingError) { + console.error({currencyFormattingError}); + } + } + } + + return (value: number) => { + let formattedValue = ""; + + if (!Object.is(value, NaN)) { + formattedValue = numberFormatter.format(value); + } + + return formattedValue; + }; +} + +/** + * + * @param {number} decimal - Decimal value + * @returns Percent representation of the decimal value + */ +function decimalToPercent(decimal: number): number { + // eslint-disable-next-line no-magic-numbers + return decimal * 100; +} + +function formatPrice(options?: FormatNumberOptions) { + const {style = "currency", currency = "USD", ...otherOptions} = options || {}; + + const formatter = formatNumber({ + style, + currency, + ...otherOptions + }); + + return (value: number) => { + let formattedValue = formatter(value); + + if (formattedValue && currency === "USD") { + // in case `narrowSymbol` option was failed, make sure "US$" sign appears as just "$" + formattedValue = formattedValue.replace("US$", "$"); + } + + return formattedValue; + }; +} + +function defaultPriceFormatter() { + const [algoFormatter, usdFormatter] = [ + ( + microAlgos: number, + // eslint-disable-next-line no-magic-numbers + options: FormatNumberOptions = {maximumFractionDigits: 6} + ) => { + let balance = ""; + + try { + balance = formatNumber(options)(algosdk.microalgosToAlgos(microAlgos)); + } catch (error) { + console.error(error); + } + + return balance; + }, + (dollarAmount: number, options?: FormatNumberOptions) => + formatNumber({...options, style: "currency"})(dollarAmount) + ]; + + return {algoFormatter, usdFormatter}; +} + +export {formatNumber, decimalToPercent, formatPrice, defaultPriceFormatter}; diff --git a/src/core/util/object/objectUtils.ts b/src/core/util/object/objectUtils.ts new file mode 100644 index 0000000..2b9d93c --- /dev/null +++ b/src/core/util/object/objectUtils.ts @@ -0,0 +1,68 @@ +/** + * Filter the given object using the predicate function + * @param {(key: keyof Obj, value: any) => boolean} predicateFn + * @returns {(object: Obj) => Obj} (object) => filteredObj + * + * @example + * + * const unfilteredObject = {a:1,b:2,c:3,d:4,e:5}; + * + * const isLargerThan = (a:number)=> (numberToCompare:number)=> numberToCompare > a; + * + * filterObject((key,value)=> isLargerThan(2)(value))(unfilteredObject) + * // => {c:3,d:4,e:5} + * + * filterObject((key,value)=> isLargerThan(4)(value))(unfilteredObject) + * // => {d:4,e:5} + */ +function filterObject>( + predicateFn: (key: keyof Obj, value: any) => boolean +): (object: Obj) => Obj { + return (object: Obj): Obj => + Object.entries(object).reduce((filtered, [key, value]) => { + if (predicateFn(key, value)) { + // @ts-ignore: No index signature with a parameter of type 'string' was found on type '{}' + filtered[key] = value; + } + + return filtered; + }, {}) as Obj; +} + +function filterTruthyObjectValues>(object: Obj) { + return filterObject((_key, value) => Boolean(value))(object); +} + +/** + * Checks the given value if the value is object and not an array or null. + * @param {unknown} x The value to check. + * @returns {boolean} Returns `true` if `value` is an object and not an array or null, else returns `false`. + * @example + * + * isRecord({}) + * // => true + * + * isRecord({a: "1"}) + * // => true + * + * isRecord(new Foo); + * // => true + * + * isRecord([1, 2, 3]) + * // => false + * + * isRecord(Function) + * // => false + * + * isRecord(null) + * // => false + */ +function isRecord(x: unknown): x is Record { + return typeof x === "object" && Boolean(x) && !Array.isArray(x); +} + +function isEmptyObject(object: Record): boolean { + return Object.keys(object).length === 0; +} + +export {filterObject, filterTruthyObjectValues, isRecord, isEmptyObject}; diff --git a/src/core/util/pera/api/peraApi.ts b/src/core/util/pera/api/peraApi.ts new file mode 100644 index 0000000..426c25d --- /dev/null +++ b/src/core/util/pera/api/peraApi.ts @@ -0,0 +1,258 @@ +import {AccountBackup} from "../../../../account/accountModels"; +import {PortfolioOverview} from "../../../../overview/util/hook/usePortfolioOverview"; +import Api, {ApiConfigType, DEFAULT_API_NETWORK} from "../../../api"; +import {fetchJSONMiddleware} from "../../../network/fetcherUtils"; +import {PERA_API_CONFIG, PERA_WEB_DEVICE_CONFIG} from "./peraApiConstants"; +import { + AccountASA, + CurrencyInformation, + DeviceInformation, + FetchMoonPayURLPayload, + MultipleAccountOverviewRequestBody +} from "./peraApiModels"; +import {mapAddressAccountASADataMiddleware} from "./peraApiUtils"; + +export class PeraApi extends Api { + private config: ConfigType; + + constructor(config: ConfigType, network: NetworkToggle = DEFAULT_API_NETWORK) { + super(config, network); + + this.config = config; + } + + registerDevice() { + return this.getInstance().run( + { + method: "POST", + body: {...PERA_WEB_DEVICE_CONFIG, accounts: []} + }, + "v2/devices/" + ); + } + + updateDevice({ + accounts, + authToken + }: { + accounts: DeviceInformation["accounts"]; + authToken: string; + }) { + return this.getInstance().run( + { + headers: { + ...(this.config[this.network].initOptions?.headers || {}), + "x-device-auth-token": authToken + }, + method: "PUT", + body: {...PERA_WEB_DEVICE_CONFIG, accounts} + }, + "v2/devices/me/" + ); + } + + createAccountBackup(deviceId: string, encryptedContent?: string) { + const body = { + type: "temporary", + creator_device: deviceId + } as { + type: "temporary" | "permanent"; + creator_device: string; + encrypted_content: string; + }; + + if (encryptedContent) { + body.encrypted_content = encryptedContent; + } + + return this.getInstance().run({method: "POST", body}, "v1/backups/"); + } + + getAccountBackup(deviceId: string) { + return this.getInstance().run<{encrypted_content: string}>( + { + method: "GET" + }, + `v1/backups/${deviceId}/` + ); + } + + getAssets(params: ListAssetRequestParams) { + return this.getInstance().run>( + { + method: "GET", + params + }, + `v1/assets/` + ); + } + + getAccountOverview(address: string) { + return this.getInstance().run( + { + method: "GET" + }, + `v1/accounts/${address}/overview` + ); + } + + getMultipleAccountOverview(body: MultipleAccountOverviewRequestBody) { + return this.getInstance().run( + { + method: "POST", + body + }, + "v1/accounts/multiple-overview/" + ); + } + + getCurrency({currency}: {currency: string}) { + return this.getInstance().run( + { + method: "GET" + }, + `v1/currencies/${currency}/` + ); + } + + fetchMoonPayURL(body: FetchMoonPayURLPayload) { + return this.getInstance().run<{url: string}>( + { + method: "POST", + body + }, + "v1/moonpay/sign-url/" + ); + } + + getAccountAssets( + address: string, + params?: ListRequestParams & {include_algo: boolean} + ) { + return this.getInstance().run>( + { + method: "GET", + params, + responseMiddlewares: [ + fetchJSONMiddleware, + mapAddressAccountASADataMiddleware(address) + ] + }, + `v1/accounts/${address}/assets/` + ); + } + + /** + * Only for Caching Purposes - Do not use directly in components. + * --- + * + * + * Get all assets of an account using a paginated endpoint + * + * + * @param {string} address + * @throws will reject if one of the prerequisite request fails + * @memberof PeraApi + */ + getAllAccountAssets(address: string): Promise { + let cursor: string | null | undefined; + let include_algo = true; + + const exec = () => + this.getAccountAssets(address, { + include_algo, + ...(cursor ? {cursor} : {}) + }); + + return new Promise(async (resolve, reject) => { + const assets: AccountASA[] = []; + + try { + do { + const {results, next} = await exec(); + + assets.push(...results); + + cursor = next ? new URL(next).searchParams.get("cursor") : null; + include_algo = false; + } while (cursor); + + resolve(assets); + } catch (error) { + reject(error); + } + }); + } + + /** + * Only for Caching Purposes - Do not use directly in components. + * --- + * Batches all independent requests for paginated `getAccountAssets` endpoint + * returns all assets of address given in array + * + * @param {string[]} addresses + * @returns {Promise} + * @memberof PeraApi + */ + getAllMultipleAccountAssets(addresses: string[]): Promise { + let include_algo = true; + let nextBatch: {address: string; next?: string}[] = addresses.map((address) => ({ + address + })); + + const exec = ( + address: string, + {shouldIncludeAlgo, cursor}: {shouldIncludeAlgo: boolean; cursor?: string} + ) => + this.getAccountAssets(address, { + include_algo: shouldIncludeAlgo, + limit: 500, + ...(cursor ? {cursor} : {}) + }); + + return new Promise(async (resolve) => { + const assets: AccountASA[] = []; + + do { + const promises: PromiseSettledResult>[] = + await Promise.allSettled( + // eslint-disable-next-line no-loop-func + nextBatch.map(({address, next}) => + exec(address, {shouldIncludeAlgo: include_algo, cursor: next}) + ) + ); + + // do not include algo after first batch + include_algo = false; + + // reset next batch if all promises settled + nextBatch = []; + + for (const promise of promises) { + if ( + promise.status === "fulfilled" && + promise.value.results && + promise.value.results.length > 0 + ) { + const {results, next} = promise.value; + const {address} = results[0]; + + assets.push(...results); + + if (next) { + const cursor = new URL(next).searchParams.get("cursor") || undefined; + + nextBatch.push({address, next: cursor}); + } + } + } + } while (nextBatch.length > 0); + + resolve(assets); + }); + } +} + +const peraApi = new PeraApi(PERA_API_CONFIG); + +export {peraApi}; diff --git a/src/core/util/pera/api/peraApiConstants.ts b/src/core/util/pera/api/peraApiConstants.ts new file mode 100644 index 0000000..6aac77d --- /dev/null +++ b/src/core/util/pera/api/peraApiConstants.ts @@ -0,0 +1,40 @@ +import {ApiConfigType} from "../../../api"; +import {FetcherConfig} from "../../../network/fetcherTypes"; +import {isProductionBuild} from "../../environment/environmentConstants"; + +const PERA_API_DEFAULT_OPTIONS: Omit = { + initOptions: { + headers: { + Accept: "application/json", + "Content-Type": "application/json", + "X-API-Key": isProductionBuild + ? "pera-web-Dr98Vnmu-0yFejf-G-A1M7-7cZS6P0d-" + : "pera-web-staging-U-jZ3m-LR6-ed-7fLTmekDl0-95N5jUX" + } + }, + bodyParser: JSON.stringify +}; + +const PERA_API_BASE_URL: Record = { + mainnet: `https://mainnet.${isProductionBuild ? "" : "staging."}api.perawallet.app/`, + testnet: `https://testnet.${isProductionBuild ? "" : "staging."}api.perawallet.app/` +}; + +const PERA_API_CONFIG: ApiConfigType = { + mainnet: { + baseUrl: PERA_API_BASE_URL.mainnet, + ...PERA_API_DEFAULT_OPTIONS + }, + testnet: { + baseUrl: PERA_API_BASE_URL.testnet, + ...PERA_API_DEFAULT_OPTIONS + } +}; + +const PERA_WEB_DEVICE_CONFIG = { + platform: "web", + application: "pera", + locale: "en" +}; + +export {PERA_API_CONFIG, PERA_WEB_DEVICE_CONFIG}; diff --git a/src/core/util/pera/api/peraApiModels.ts b/src/core/util/pera/api/peraApiModels.ts new file mode 100644 index 0000000..e87b62d --- /dev/null +++ b/src/core/util/pera/api/peraApiModels.ts @@ -0,0 +1,43 @@ +export type AccountASA = Omit< + Asset, + "creator" | "explorer_url" | "is_verified" | "usd_value" | "total" +> & { + address: string; + amount: string; + balance_usd_value: string; +}; + +export interface CurrencyInformation { + currency_id: string; + name: string; + symbol: string; + usd_value: number; + exchange_price: string; + last_updated_at: string; + s: string; +} + +export interface FetchMoonPayURLPayload { + wallet_address: string; + redirect_url: string; + email?: string; + lock_amount?: string; +} + +export interface MultipleAccountOverviewRequestBody { + account_addresses: string[]; + last_known_round?: string; + exclude_opt_ins?: boolean; +} + +export interface DeviceInformation { + id: string; + accounts: { + address: string; + is_watch_account: boolean; + receive_notifications: boolean; + }[]; + auth_token: string; + push_token: string; + app_version: string; +} diff --git a/src/core/util/pera/api/peraApiUtils.ts b/src/core/util/pera/api/peraApiUtils.ts new file mode 100644 index 0000000..1eb16a9 --- /dev/null +++ b/src/core/util/pera/api/peraApiUtils.ts @@ -0,0 +1,14 @@ +import {FetcherMiddleware} from "../../../network/fetcherTypes"; +import {AccountASA} from "./peraApiModels"; + +function mapAddressAccountASADataMiddleware( + address: string +): FetcherMiddleware> { + return (response) => + Promise.resolve({ + ...response, + results: response.results.map((result) => ({...result, address})) + }); +} + +export {mapAddressAccountASADataMiddleware}; diff --git a/src/core/util/pera/explorer/getPeraExplorerLink.ts b/src/core/util/pera/explorer/getPeraExplorerLink.ts new file mode 100644 index 0000000..fdf9b8d --- /dev/null +++ b/src/core/util/pera/explorer/getPeraExplorerLink.ts @@ -0,0 +1,31 @@ +// TODO add other types here in case of need +type PeraExplorerLinkType = "account-detail"; + +function getPeraExplorerLink({ + network, + type, + id +}: { + network: NetworkToggle; + type: PeraExplorerLinkType; + id: string; +}): string { + const origin = + network === "mainnet" + ? "https://explorer.perawallet.app" + : "https://testnet.explorer.perawallet.app"; + let link = ""; + + switch (type) { + case "account-detail": + link = `${origin}/accounts/${encodeURIComponent(id)}`; + break; + + default: + break; + } + + return link; +} + +export {getPeraExplorerLink}; diff --git a/src/core/util/prism/prismUtils.ts b/src/core/util/prism/prismUtils.ts new file mode 100644 index 0000000..1df4aa7 --- /dev/null +++ b/src/core/util/prism/prismUtils.ts @@ -0,0 +1,38 @@ +import {stringifySearchParams} from "../url/urlUtils"; + +interface PrismOptions { + height?: number; + width?: number; + quality?: number; + cmd?: "resize_then_fit" | "resize_then_crop"; +} + +/** + * Generate a Prism url. + * @param {PrismOptions} options Provide options to customize the generated url + * @returns {function} A function that expects a base url and returns the full Prism url. + */ +// eslint-disable-next-line no-magic-numbers +function generatePrismUrl({height, width, quality = 100, cmd}: PrismOptions) { + const params: {w?: string; h?: string; quality: string; cmd?: PrismOptions["cmd"]} = { + quality: `${quality}` + }; + + if (width) { + params.w = `${width}`; + } + + if (height) { + params.h = `${height}`; + } + + if (cmd) { + params.cmd = cmd; + } + + const searchString = stringifySearchParams(params as {[x: string]: string}); + + return (url: string) => `${url}?${searchString}`; +} + +export {generatePrismUrl}; diff --git a/src/core/util/storage/db/DBManager.test.ts b/src/core/util/storage/db/DBManager.test.ts new file mode 100644 index 0000000..ed92f91 --- /dev/null +++ b/src/core/util/storage/db/DBManager.test.ts @@ -0,0 +1,150 @@ +/* eslint-disable no-magic-numbers */ +// @ts-ignore there is no ts support for fake-indexeddb +import "fake-indexeddb/auto"; +// @ts-ignore there is no ts support for fake-indexeddb +import FDBFactory from "fake-indexeddb/lib/FDBFactory"; +// The easiest way to use it is to import fake-indexeddb/auto +// which will put all the IndexedDB objects in the global scope. +// Whenever you want a fresh indexedDB +// const FDBFactory = require("fake-indexeddb/lib/FDBFactory"); +// indexedDB = new FDBFactory(); + +import {appDBManager, assetDBManager} from "../../../app/db"; +import {appDBTables} from "../../../app/db/appDBManager"; +import {assetDBTables} from "../../../app/db/assetDBManager"; +import {stringToUint8Array, uint8ArrayToString} from "../../blob/blobUtils"; +import {decryptSK, encryptSK, hashPassword} from "../../nacl/naclUtils"; +import {INDEXED_DB_VERSION} from "./DBManager"; + +const today = new Date(); + +const MOCK_ACCOUNTS = [ + { + name: "a1", + address: "acccountaddress1", + pk: "1", + date: today + }, + { + name: "a2", + address: "acccountaddress2", + pk: "2", + date: new Date(today.getDate() + 1) + } +]; + +const ENCRYPTION_KEY = "hipo"; + +// mock data insertion into indexedDB +async function initIndexedDB() { + const dbRequest = indexedDB.open("pera-wallet", INDEXED_DB_VERSION); + const assetDbRequest = indexedDB.open("pera-wallet-assets", INDEXED_DB_VERSION); + + dbRequest.onupgradeneeded = () => { + appDBTables.forEach((table) => { + dbRequest.result.createObjectStore(table.name); + }); + }; + + assetDbRequest.onupgradeneeded = () => { + assetDBTables.forEach((table) => { + dbRequest.result.createObjectStore(table.name, { + keyPath: table.keypath + }); + }); + }; + + dbRequest.onsuccess = async (event: Event) => { + // accounts table + const accountsTxn = (event.target as IDBRequest).result.transaction( + "accounts", + "readwrite" + ); + const accountsStore = accountsTxn.objectStore("accounts"); + + for (const mockAccount of MOCK_ACCOUNTS) { + const hashedKey = hashPassword(JSON.stringify(mockAccount.address)); + + const encryptedAccount = await encryptSK( + stringToUint8Array(JSON.stringify(mockAccount)), + ENCRYPTION_KEY + ); + + accountsStore.add(encryptedAccount, hashedKey); + } + }; + + // this is needed to wait for indexedDB insertions to be completed + await new Promise((resolve) => { + setTimeout(() => { + resolve(1); + }, 500); + }); +} + +describe("DBManager/indexedDB", () => { + beforeEach(async () => { + await initIndexedDB(); + }); + + it("`pera-wallet` and appDBManager should be initialized", async () => { + const idbDatabases = await indexedDB.databases(); + + expect(idbDatabases).toHaveLength(2); + expect(appDBManager).toBeDefined(); + expect(assetDBManager).toBeDefined(); + }); + + describe("getAll method", () => { + it("get all predefined accounts length", async () => { + const accounts = await appDBManager.getAllValues("accounts"); + + expect(accounts.length).toEqual(MOCK_ACCOUNTS.length); + }); + }); + + describe("encrypted set and get method", () => { + it("set method encrypted", async () => { + const account3 = { + name: "a3", + address: "acccountaddress3", + pk: "3", + date: new Date(today.getDate() + 2) + }; + + try { + await appDBManager.set("accounts", ENCRYPTION_KEY)(account3.address, account3); + + const getMethodResult = await appDBManager.get( + "accounts", + ENCRYPTION_KEY + )(account3.address); + + const idbObj = await new Promise((resolve) => { + const idbReq = indexedDB.open("pera-wallet"); + + idbReq.onsuccess = (event: any) => { + const idb = event.target.result; + const txn = idb.transaction(["accounts"], "readonly"); + const objStore = txn!.objectStore("accounts"); + + const hashedKey = hashPassword(JSON.stringify(account3.address)); + const tableReq = objStore.get(hashedKey); + + tableReq.onsuccess = async () => { + const decryptedContent = await decryptSK(tableReq.result, ENCRYPTION_KEY); + + resolve(JSON.parse(uint8ArrayToString(decryptedContent))); + }; + }; + }); + + expect(idbObj).not.toMatchObject(account3); + expect(idbObj).toHaveProperty("address", account3.address); + expect(getMethodResult).toMatchObject(account3); + } catch (error) { + console.error(error); + } + }); + }); +}); diff --git a/src/core/util/storage/db/DBManager.ts b/src/core/util/storage/db/DBManager.ts new file mode 100644 index 0000000..5cae7b1 --- /dev/null +++ b/src/core/util/storage/db/DBManager.ts @@ -0,0 +1,441 @@ +/* eslint-disable max-lines */ +import {generateKeyMapFromArray} from "../../array/arrayUtils"; +import {stringToUint8Array, uint8ArrayToString} from "../../blob/blobUtils"; +import {decryptSK, encryptSK, hashPassword} from "../../nacl/naclUtils"; + +// This is used to determine if the database needs to be upgraded. +// If you change the structure of the tables, you must increment this version number. +export const INDEXED_DB_VERSION = 7; + +/** + * TODO: Things to fix + * - dbManager.get()() doesn't return the correct shape, fix it + * - dbManager.set()() doesn't expect the correct shape, fix it + * - Better error handling on the get and set methods + * - Implement update methods + */ +class DBManager { + private databaseName: string | null = null; + private tables: DBManagerTables | null = null; + + /** + * Simple and minimalistic wrapper for browser's IndexedDB API + Usage: + - Create a new DBManager instance. + - If you want to use a custom database shape, you can pass it to DBManager. + - const dbManager = new DBManager("pera-wallet", [ + { + transactions: { + txn: Transaction, + status: TransactionStatus, + }, + app: { + theme: "light" | "dark" + } + } + ]); + - Call dbManager.set("transactions")({ + txn: "0x123456789", + status: "pending", + }) to save a row to the "transactions" table. + - Call dbManager.get("transactions")() to fetch all the records on the "transactions" table. + - Call dbManager.get("app")("theme") to fetch the specific record on the "app" table. + - Call dbManager.delete("app")("theme") to delete the specific record on the "app" table. + + Details on: https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API + * + * @param database The name of the database + * @param tables The tables to create in the objectStore + */ + constructor(database: string, tables: DBManagerTables) { + this.databaseName = database; + this.tables = tables; + + this.connectDB(); + } + + private connectDB(): IDBOpenDBRequest { + if (!this.tables || !this.databaseName) { + throw new Error("Please provide a valid databaseName and database tables schema"); + } + + const {tables} = this; + + const dbRequest = indexedDB.open(this.databaseName!, INDEXED_DB_VERSION); + + // If the database requires an upgrade + dbRequest.onupgradeneeded = () => { + tables.forEach((table) => { + // If the table doesn't exist, create it + if (!dbRequest.result.objectStoreNames.contains(table.name)) { + const objectStore = dbRequest.result.createObjectStore(table.name, { + keyPath: table.keypath + }); + + // create indexes + if (table?.indexes) { + for (const index of table.indexes) { + const [name, keyPath, options] = index; + + objectStore.createIndex(name, keyPath, options); + } + } + } + }); + }; + + return dbRequest; + } + + public decryptTableEntries( + table: T, + encryptionKey: string + ): (primaryKey: K) => Promise { + return (primaryKey: K) => + new Promise(async (resolve, reject) => { + try { + const entries = await this.getAllValues(table, {isEncrypted: true}); + + const decryptedEntries = await Promise.all( + entries.map((entry) => decryptSK(entry, encryptionKey, {stringify: true})) + ); + + resolve( + generateKeyMapFromArray( + decryptedEntries.map((decryptedEntry) => + JSON.parse(decryptedEntry, (key, value) => { + // encrypted values are JSON.stringified + // reviver function is needed to parse stringified dates + if (key === "date") { + return new Date(value); + } + + return value; + }) + ), + primaryKey + ) + ); + } catch (error) { + reject(error); + } + }); + } + + public get(table: T, encryptionKey: string) { + const dbRequest = this.connectDB(); + + return (key: K): Promise => + new Promise((resolve, reject) => { + dbRequest.onerror = (error) => { + console.error(error); + + reject(error); + }; + + dbRequest.onsuccess = (event: Event) => { + try { + const transaction = ( + event.target as IDBRequest + ).result.transaction(table as string, "readwrite"); + const objectStore = transaction.objectStore(table as string); + const hashedKey = hashPassword(JSON.stringify(key)); + + const tableRequest: IDBRequest> = + objectStore.get(hashedKey); + + tableRequest.onerror = (error: any) => { + reject(error); + }; + + tableRequest.onsuccess = async () => { + try { + const encryptedContent = JSON.parse( + uint8ArrayToString(await decryptSK(tableRequest.result, encryptionKey)), + (entryKey, value) => { + if (entryKey === "date") { + return new Date(value); + } + + return value; + } + ); + + resolve(encryptedContent); + } catch (error) { + console.error(error); + + reject(error); + } + }; + } catch (error) { + reject(error); + } + }; + }); + } + + public getAllValues( + table: T, + options?: K extends true + ? {isEncrypted: K; indexName?: string; keyRange?: never} + : {isEncrypted: K; indexName?: string; keyRange?: IDBKeyRange} + ): Promise<(K extends true ? string : ValueOf)[]> { + const dbRequest = this.connectDB(); + + return new Promise((resolve, reject) => { + dbRequest.onerror = (error) => { + console.error(error); + + reject(error); + }; + + dbRequest.onsuccess = (event: Event) => { + try { + const {keyRange, indexName} = options || {}; + + const transaction = ( + event.target as IDBRequest + ).result.transaction(table as string, "readwrite"); + let objectStore: IDBObjectStore | IDBIndex = transaction.objectStore( + table as string + ); + + if (indexName) { + objectStore = objectStore.index(indexName); + } + + const getAllValuesRequest = objectStore.getAll(keyRange); + + getAllValuesRequest.onsuccess = (ev: any) => { + resolve( + (ev.target.result) as string[] + ); + }; + getAllValuesRequest.onerror = (error) => { + reject(error); + }; + } catch (error) { + reject(error); + } + }; + }); + } + + public getAllKeys(table: T): Promise { + const dbRequest = this.connectDB(); + + return new Promise((resolve, reject) => { + dbRequest.onerror = (error) => { + reject(error); + }; + + dbRequest.onsuccess = () => { + const transaction = dbRequest.result.transaction([table as string], "readwrite"); + const objectStore = transaction.objectStore(table as string); + + const tableRequest = objectStore.getAllKeys(); + + tableRequest.onerror = (error: any) => { + reject(error); + }; + + tableRequest.onsuccess = () => { + resolve(tableRequest.result); + }; + }; + }); + } + + public set(table: T, encryptionKey: string) { + const dbRequest = this.connectDB(); + + return >( + key: K, + value: V + ): Promise => + new Promise((resolve, reject) => { + dbRequest.onerror = (error) => { + console.error(error); + + reject(error); + }; + + dbRequest.onsuccess = async () => { + try { + const transaction = dbRequest.result.transaction( + [table as string], + "readwrite" + ); + const objectStore = transaction.objectStore(table as string); + + if (key && value) { + const hashedKey = hashPassword(JSON.stringify(key)); + const encryptedValue = await encryptSK( + stringToUint8Array(JSON.stringify(value)), + encryptionKey + ); + + const tableRequest = objectStore.put( + encryptedValue, + hashedKey as IDBValidKey + ); + + tableRequest.onerror = (error: any) => { + reject(error); + }; + + tableRequest.onsuccess = () => { + resolve(tableRequest.result as string); + }; + } + } catch (error) { + console.error(error); + + reject(error); + } + }; + }); + } + + public setAll(table: T) { + const dbRequest = this.connectDB(); + + return (entries: V[]): Promise => + new Promise((resolve, reject) => { + dbRequest.onerror = (error) => { + console.error(error); + + reject(error); + }; + + dbRequest.onsuccess = () => { + const transaction = dbRequest.result.transaction( + [table as string], + "readwrite" + ); + + for (const entry of entries) { + transaction.objectStore(table as string).put(entry, undefined); + } + + transaction.oncomplete = () => { + resolve(true); + }; + + transaction.onerror = (error) => { + console.error(error); + reject(error); + }; + }; + }); + } + + public delete(table: T) { + const dbRequest = this.connectDB(); + + return ({ + key, + encryptionKey + }: + | {key: string; encryptionKey: string} + | {key: IDBKeyRange; encryptionKey?: never}): Promise> => + new Promise((resolve, reject) => { + dbRequest.onerror = (error) => { + console.error(error); + + reject(error); + }; + + dbRequest.onsuccess = () => { + try { + const transaction = dbRequest.result.transaction( + [table as string], + "readwrite" + ); + const objectStore = transaction.objectStore(table as string); + const idbKey = encryptionKey ? hashPassword(JSON.stringify(key)) : key; + + const tableRequest = objectStore.delete(idbKey); + + tableRequest.onerror = (error: any) => { + reject(error); + }; + + tableRequest.onsuccess = () => { + resolve(tableRequest.result); + }; + } catch (error) { + console.error(error); + + reject(error); + } + }; + }); + } + + public clearTable(tables: T[]) { + const dbRequest = this.connectDB(); + + return new Promise((resolve, reject) => { + dbRequest.onerror = (error) => { + console.error(error); + + reject(error); + }; + + dbRequest.onsuccess = () => { + try { + const transaction = dbRequest.result.transaction( + tables as string[], + "readwrite" + ); + + tables.forEach((table) => { + transaction.objectStore(table as string).clear(); + }); + + transaction.onerror = (error: any) => { + reject(error); + }; + + transaction.oncomplete = () => { + resolve(true); + }; + } catch (error) { + console.error(error); + + reject(error); + } + }; + }); + } + + public reset() { + const dbRequest = this.connectDB(); + + return new Promise((resolve, reject) => { + dbRequest.onerror = (error) => { + console.error(error); + reject(error); + }; + + dbRequest.onsuccess = () => { + this.tables?.forEach((table) => { + const transaction = dbRequest.result.transaction(table.name, "readwrite"); + const objectStore = transaction.objectStore(table.name); + + objectStore.clear(); + + transaction.onerror = (error) => { + console.error(error); + reject(error); + }; + }); + resolve(dbRequest.result); + }; + }); + } +} + +export {DBManager}; diff --git a/src/core/util/storage/db/DBManagerTypes.d.ts b/src/core/util/storage/db/DBManagerTypes.d.ts new file mode 100644 index 0000000..0fc20a5 --- /dev/null +++ b/src/core/util/storage/db/DBManagerTypes.d.ts @@ -0,0 +1,7 @@ +type DBManagerTable = { + name: string; + keypath?: string | string[]; + autoIncrement: boolean; + indexes?: Parameters[]; +}; +type DBManagerTables = DBManagerTable[]; diff --git a/src/core/util/storage/web/webStorage.ts b/src/core/util/storage/web/webStorage.ts new file mode 100644 index 0000000..3e06743 --- /dev/null +++ b/src/core/util/storage/web/webStorage.ts @@ -0,0 +1,80 @@ +const {localStorage, sessionStorage} = window; + +const webStorage = { + local: { + setItem(itemName: string, itemValue: WebStorageStoredValue) { + localStorage.setItem(itemName, JSON.stringify(itemValue)); + }, + getItem(itemName: string): WebStorageStoredValue { + let storedValue = localStorage.getItem(itemName); + + storedValue = storedValue ? JSON.parse(storedValue) : null; + + return storedValue; + }, + removeItem(itemName: string) { + localStorage.removeItem(itemName); + } + }, + session: { + setItem(itemName: string, itemValue: WebStorageStoredValue) { + sessionStorage.setItem(itemName, JSON.stringify(itemValue)); + }, + getItem(itemName: string): WebStorageStoredValue { + let storedValue = sessionStorage.getItem(itemName); + + storedValue = storedValue ? JSON.parse(storedValue) : null; + + return storedValue; + }, + removeItem(itemName: string) { + sessionStorage.removeItem(itemName); + } + }, + cookie: { + getCookie(name: string) { + const cookies = Object.fromEntries( + document.cookie + .split("; ") + .map((cookie) => cookie.split("=").map(decodeURIComponent)) + ); + + return cookies[name] || null; + }, + deleteCookie(name: string) { + document.cookie = `${name}=; Max-Age=-99999999;`; + } + }, + getFromWebStorage(itemName: string): WebStorageStoredValue { + let itemValue = webStorage.local.getItem(itemName); + + if (!itemValue) { + itemValue = webStorage.session.getItem(itemName); + } + + return itemValue; + }, + removeFromWebStorage(itemName: string) { + webStorage.session.removeItem(itemName); + webStorage.local.removeItem(itemName); + } +}; + +const STORED_KEYS = { + LOCK_TABS: "lock-tabs", + HIDE_ASSET_OPTIN_INFO_MODAL: "hide-asset-optin-info-modal", + HIDE_SEND_TXN_INFO_MODAL: "hide-send-txn-info-modal", + CREATED_NEW_ACCOUNT: "created-new-account", + + // Common App States + THEME: "theme", + HASHED_MASTERKEY: "pera-hash", + PREFERRED_NETWORK: "preferred-network", + + // Encrypted Common App States + DEVICE_INFO: "device-info", + STALE_PORTFOLIO_OVERVIEW: "stale-portfolio-overview" +} as const; + +export default webStorage; +export {STORED_KEYS}; diff --git a/src/core/util/storage/web/webStorageTypes.d.ts b/src/core/util/storage/web/webStorageTypes.d.ts new file mode 100644 index 0000000..1fbe9ac --- /dev/null +++ b/src/core/util/storage/web/webStorageTypes.d.ts @@ -0,0 +1,42 @@ +type WebStorageStoredValue = null | string | boolean | {[x: string]: any}; + +type DeviceInfo = Record< + NetworkToggle, + { + deviceId: string; + token: string; + } +>; + +type AppBanner = { + id: string; + isClosed: boolean; +}; + +interface AccountDomain { + name: string; + source: "nfdomain" | "peranameservice"; + image: string; +} + +interface AccountOverview { + address: string; + name: AccountDomain | null; + total_usd_value: string; + total_algo_value: string; + standard_asset_count: number; + collectible_count: number; +} + +interface AppDBOverview { + current_round: string; + portfolio_value_usd: string; + portfolio_value_algo: string; + accounts: AccountOverview[]; +} + +type CommonAppState = { + theme: "system" | "dark" | "light"; + hashedMasterkey: string; + preferredNetwork: NetworkToggle; +}; diff --git a/src/core/util/storage/web/webStorageUtils.ts b/src/core/util/storage/web/webStorageUtils.ts new file mode 100644 index 0000000..003291b --- /dev/null +++ b/src/core/util/storage/web/webStorageUtils.ts @@ -0,0 +1,52 @@ +import {stringToUint8Array, uint8ArrayToString} from "../../blob/blobUtils"; +import {decryptSK, encryptSK} from "../../nacl/naclUtils"; +import webStorage, {STORED_KEYS} from "./webStorage"; + +function encryptedWebStorageUtils(encryptionKey: string) { + return { + async get( + storedKey: ValueOf< + Pick + > + ) { + const encryptedContent = webStorage.local.getItem(storedKey); + + if (!encryptedContent) return null; + + const decryptedContent = await decryptSK(encryptedContent as string, encryptionKey); + + return JSON.parse(uint8ArrayToString(decryptedContent)); + }, + async set( + storedKey: ValueOf< + Pick + >, + value: unknown + ): Promise { + const encryptedContent = await encryptSK( + stringToUint8Array(JSON.stringify(value)), + encryptionKey + ); + + webStorage.local.setItem(storedKey, encryptedContent); + } + }; +} + +function getCommonAppState() { + const {THEME, PREFERRED_NETWORK, HASHED_MASTERKEY} = STORED_KEYS; + + const [theme, preferredNetwork, hashedMasterkey] = [ + THEME, + PREFERRED_NETWORK, + HASHED_MASTERKEY + ].map((storedKey) => webStorage.local.getItem(storedKey)); + + return { + theme, + preferredNetwork, + hashedMasterkey + } as CommonAppState; +} + +export {encryptedWebStorageUtils, getCommonAppState}; diff --git a/src/core/util/string/stringUtils.ts b/src/core/util/string/stringUtils.ts new file mode 100644 index 0000000..0dff90e --- /dev/null +++ b/src/core/util/string/stringUtils.ts @@ -0,0 +1,16 @@ +function encodeString(text: string) { + return new TextEncoder().encode(text); +} + +/** + * @param options Options + * @returns A randomly generated string + */ +function generateRandomString(options?: {radix?: number; substringStartIndex?: number}) { + // eslint-disable-next-line no-magic-numbers + const {radix = 36, substringStartIndex = 7} = options || {}; + + return Math.random().toString(radix).substring(substringStartIndex); +} + +export {encodeString, generateRandomString}; diff --git a/src/core/util/time/timeConstants.ts b/src/core/util/time/timeConstants.ts new file mode 100644 index 0000000..24e64a3 --- /dev/null +++ b/src/core/util/time/timeConstants.ts @@ -0,0 +1,23 @@ +const DATE_FORMAT = { + DEFAULT: "MMMM d, y", + DEFAULT_MONTH_AND_DAY: "MMM d", + MONTH_YEAR_AND_HOUR_MINUTE: "MMM yyyy, 'at' h:mm a", + DEFAULT_HOUR_MINUTE: "h:mm a", + MONTH: "MMM", + API_FORMAT: "yyyy-MM-dd" +}; +const SECOND_IN_MS = 1000; +const MINUTE_IN_S = 60; +const MINUTE_IN_MS = MINUTE_IN_S * SECOND_IN_MS; +const HOUR_IN_MINUTES = 60; +const DAY_IN_HOURS = 24; +const WEEK_IN_DAYS = 7; + +export { + DATE_FORMAT, + SECOND_IN_MS, + MINUTE_IN_MS, + HOUR_IN_MINUTES, + DAY_IN_HOURS, + WEEK_IN_DAYS +}; diff --git a/src/core/util/time/timeTypes.ts b/src/core/util/time/timeTypes.ts new file mode 100644 index 0000000..0cd1d58 --- /dev/null +++ b/src/core/util/time/timeTypes.ts @@ -0,0 +1,6 @@ +export type FormatDateUtilOptions = { + format: string; + timezone?: string | null; + shouldShiftDateToCompensateForTimezone?: boolean; + isProvidedDateInUTC?: boolean; +}; diff --git a/src/core/util/time/timeUtils.ts b/src/core/util/time/timeUtils.ts new file mode 100644 index 0000000..0b87c55 --- /dev/null +++ b/src/core/util/time/timeUtils.ts @@ -0,0 +1,61 @@ +/* eslint-disable import/no-duplicates */ +import enCA from "date-fns/locale/en-CA"; +import formatWithOptions from "date-fns/fp/formatWithOptions"; +import {formatInTimeZone, utcToZonedTime} from "date-fns-tz"; + +import {FormatDateUtilOptions} from "./timeTypes"; +import {MINUTE_IN_MS} from "./timeConstants"; +import {getLocalTimezone} from "./timezoneUtils"; + +/** + * Formats a Date object into a human friendly string + * + * Note on usage: + * Whenever the timezone information is not available and a date object that is passed to this function is generated from a ISO-8601 date string (yyyy-MM-dd), `shouldShiftDateToCompensateForTimezone` option should be set to `true`. + * Otherwise, the displayed date would be inconsistent with the data. For example, for a user with Eastern Daylight Time (to generalize, any user that has a negative UTC offset), the following Date object is created for "2007-05-16": Tue May 15 2007 20:00:00 GMT-0400 (Eastern Daylight Time) {}. Therefore, 15 May appears on the screen. By passing `new Date("2007-05-16")` value to `compensateForTimezone` utility, we fix this problem. + * When the timezone information is passed to `formatDateWithOptions`, this extra compensation is redundant as `date-fns-tz/utcToZonedTime` handles it corrently. + * + * @param {object} options FormatDateUtilOptions + * @return {string} Formatted date + */ +function formatDateWithOptions(options: FormatDateUtilOptions) { + const { + format, + shouldShiftDateToCompensateForTimezone = true, + isProvidedDateInUTC = true, + timezone = getLocalTimezone() + } = options || {}; + + return (date: Date): string => { + let dateToFormat = date; + + if (timezone && isProvidedDateInUTC) { + dateToFormat = utcToZonedTime(date, timezone); + } else if (!timezone && shouldShiftDateToCompensateForTimezone) { + dateToFormat = compansateForTimezone(date); + } + + return timezone + ? formatInTimeZone(dateToFormat, timezone, format, { + locale: enCA, + timeZone: timezone + }) + : formatWithOptions({locale: enCA}, format)(dateToFormat); + }; +} + +/** + * Shifts the time of the Date object by the system's UTC offset to avoid timezone issues. + * + * For example, for a user with Eastern Daylight Time (to generalize, any user that has a negative UTC offset), the following Date object is created for "2007-05-16": Tue May 15 2007 20:00:00 GMT-0400 (Eastern Daylight Time) {}. + * By using this utility we get the following Date object: `compansateForTimezone(new Date("2007-05-16"))` = Tue May 16 2007 00:00:00 GMT-0400 (Eastern Daylight Time) {} + * + * @param {Date} date Date to shift + * @return {Date} shifted Date + */ +function compansateForTimezone(date: Date): Date { + // `Date.prototype.getTimezoneOffset` returns a value signed according to the locale timezone offset. See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getTimezoneOffset + return new Date(date.getTime() - date.getTimezoneOffset() * -1 * MINUTE_IN_MS); +} + +export {formatDateWithOptions}; diff --git a/src/core/util/time/timezoneUtils.ts b/src/core/util/time/timezoneUtils.ts new file mode 100644 index 0000000..5d5392d --- /dev/null +++ b/src/core/util/time/timezoneUtils.ts @@ -0,0 +1,18 @@ +/** + * Returns the browser's system timezone. + * eg. "Canada/Central" + * @return {string} Local timezone + */ +function getLocalTimezone() { + let timeZone = ""; + + try { + timeZone = new Intl.DateTimeFormat().resolvedOptions().timeZone; + } catch (error) { + console.error(error); + } + + return timeZone; +} + +export {getLocalTimezone}; diff --git a/src/core/util/type/typeUtils.d.ts b/src/core/util/type/typeUtils.d.ts new file mode 100644 index 0000000..da10a1c --- /dev/null +++ b/src/core/util/type/typeUtils.d.ts @@ -0,0 +1,3 @@ +type ValueOf = T[keyof T]; + +type ArrayToUnion = T[number]; diff --git a/src/core/util/url/urlUtils.ts b/src/core/util/url/urlUtils.ts new file mode 100644 index 0000000..67fec19 --- /dev/null +++ b/src/core/util/url/urlUtils.ts @@ -0,0 +1,17 @@ +/** + * Initiates URLSearchParams with the provided params object and stringifies it + * @param {object} params A params object. + * @returns {string} Stringified search string + * @example + * + * stringifySearchParams({a: "123"}) + * // => "a=123" + * + * stringifySearchParams({a: 1, b: "test", c: true}) + * // => "a=1&b=test&c=true" + */ +function stringifySearchParams>(params: Params) { + return new URLSearchParams(params).toString(); +} + +export {stringifySearchParams}; diff --git a/src/explore/item/card/ExploreItemCard.tsx b/src/explore/item/card/ExploreItemCard.tsx new file mode 100644 index 0000000..4609571 --- /dev/null +++ b/src/explore/item/card/ExploreItemCard.tsx @@ -0,0 +1,46 @@ +import {ReactComponent as ExportIcon} from "../../../core/ui/icons/export.svg"; + +import classNames from "classnames"; + +import "./_explore-item-card.scss"; + +import Image from "../../../component/image/Image"; + +interface ExploreItemCardProps { + item: ExploreItem; + customClassName?: string; +} + +function ExploreItemCard({item, customClassName}: ExploreItemCardProps) { + const {name, description, cover, logo, cta_text, cta_url} = item; + + return ( +
    + + +
    + {name} +
    +
    + {description} +
    + + {cta_text} + +
    + ); +} + +export default ExploreItemCard; diff --git a/src/explore/item/card/_explore-item-card.scss b/src/explore/item/card/_explore-item-card.scss new file mode 100644 index 0000000..eefde6a --- /dev/null +++ b/src/explore/item/card/_explore-item-card.scss @@ -0,0 +1,69 @@ +@import "../../../core/ui/typography/_typography-mixins.scss"; + +.explore-item-card { + display: flex; + flex-direction: column; + + min-height: 412px; + + padding: 12px 32px 28px; + + background: var(--card-default); + border-radius: 16px; + box-shadow: var(--shadow-small); +} + +.explore-item-card__cover { + display: flex; + + overflow: hidden; + + margin: 0 -20px; + + border-radius: 12px; +} + +.explore-item-card__logo { + display: flex; + + width: 44px; + height: 44px; + + overflow: hidden; + + margin-top: -22px; + + border: 4px solid var(--white); + border-radius: 100%; +} + +.explore-item-card__name { + margin: 8px 0 4px; +} + +.explore-item-card__description { + margin-bottom: 16px; +} + +.explore-item-card__cta { + @include typography--button(); + + width: 100%; + height: auto; + + margin-top: auto; +} + +.explore-item-card__cta__icon { + margin-left: 8px; + + transition: transform var(--default-animation); + + path { + fill: var(--light-button-text); + } +} + +.explore-item-card__cta:hover .explore-item-card__cta__icon { + transform: translate(2px, -2px); +} diff --git a/src/explore/item/list/ExploreItemList.tsx b/src/explore/item/list/ExploreItemList.tsx new file mode 100644 index 0000000..d611e1d --- /dev/null +++ b/src/explore/item/list/ExploreItemList.tsx @@ -0,0 +1,23 @@ +import "./_explore-item-list.scss"; + +import {List, ListItem} from "@hipo/react-ui-toolkit"; + +import ExploreItemCard from "../card/ExploreItemCard"; + +interface ExploreItemListProps { + items: ExploreItem[]; +} + +function ExploreItemList({items}: ExploreItemListProps) { + return ( + + {(item) => ( + + + + )} + + ); +} + +export default ExploreItemList; diff --git a/src/explore/item/list/_explore-item-list.scss b/src/explore/item/list/_explore-item-list.scss new file mode 100644 index 0000000..72de8d2 --- /dev/null +++ b/src/explore/item/list/_explore-item-list.scss @@ -0,0 +1,10 @@ +.explore-item-list { + display: grid; + grid-template-columns: repeat(4, minmax(264px, 1fr)); + gap: 16px; + grid-auto-rows: 1fr; + + .explore-item-card { + height: 100%; + } +} diff --git a/src/explore/util/assets/algofi-cover.jpg b/src/explore/util/assets/algofi-cover.jpg new file mode 100644 index 0000000..1c275b7 Binary files /dev/null and b/src/explore/util/assets/algofi-cover.jpg differ diff --git a/src/explore/util/assets/algofi-logo.svg b/src/explore/util/assets/algofi-logo.svg new file mode 100644 index 0000000..d8869f5 --- /dev/null +++ b/src/explore/util/assets/algofi-logo.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/explore/util/assets/algoxnft-cover.jpg b/src/explore/util/assets/algoxnft-cover.jpg new file mode 100644 index 0000000..cb4f54b Binary files /dev/null and b/src/explore/util/assets/algoxnft-cover.jpg differ diff --git a/src/explore/util/assets/algoxnft-logo.svg b/src/explore/util/assets/algoxnft-logo.svg new file mode 100644 index 0000000..ea37016 --- /dev/null +++ b/src/explore/util/assets/algoxnft-logo.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/explore/util/assets/banxa-cover.jpg b/src/explore/util/assets/banxa-cover.jpg new file mode 100644 index 0000000..46baf79 Binary files /dev/null and b/src/explore/util/assets/banxa-cover.jpg differ diff --git a/src/explore/util/assets/banxa-logo.svg b/src/explore/util/assets/banxa-logo.svg new file mode 100644 index 0000000..ab800d4 --- /dev/null +++ b/src/explore/util/assets/banxa-logo.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/explore/util/assets/coinbase-cover.jpg b/src/explore/util/assets/coinbase-cover.jpg new file mode 100644 index 0000000..874bb7b Binary files /dev/null and b/src/explore/util/assets/coinbase-cover.jpg differ diff --git a/src/explore/util/assets/coinbase-logo.svg b/src/explore/util/assets/coinbase-logo.svg new file mode 100644 index 0000000..7c002b0 --- /dev/null +++ b/src/explore/util/assets/coinbase-logo.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/explore/util/assets/folksfinance-cover.jpg b/src/explore/util/assets/folksfinance-cover.jpg new file mode 100644 index 0000000..3203cac Binary files /dev/null and b/src/explore/util/assets/folksfinance-cover.jpg differ diff --git a/src/explore/util/assets/folksfinance-logo.svg b/src/explore/util/assets/folksfinance-logo.svg new file mode 100644 index 0000000..129d1fd --- /dev/null +++ b/src/explore/util/assets/folksfinance-logo.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/explore/util/assets/gard-cover.jpg b/src/explore/util/assets/gard-cover.jpg new file mode 100644 index 0000000..c83f10d Binary files /dev/null and b/src/explore/util/assets/gard-cover.jpg differ diff --git a/src/explore/util/assets/gard-logo.svg b/src/explore/util/assets/gard-logo.svg new file mode 100644 index 0000000..6012874 --- /dev/null +++ b/src/explore/util/assets/gard-logo.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/explore/util/assets/humble-cover.jpg b/src/explore/util/assets/humble-cover.jpg new file mode 100644 index 0000000..a7dd711 Binary files /dev/null and b/src/explore/util/assets/humble-cover.jpg differ diff --git a/src/explore/util/assets/humble-logo.svg b/src/explore/util/assets/humble-logo.svg new file mode 100644 index 0000000..63d3b20 --- /dev/null +++ b/src/explore/util/assets/humble-logo.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/explore/util/assets/moonpay-cover.jpg b/src/explore/util/assets/moonpay-cover.jpg new file mode 100644 index 0000000..056efde Binary files /dev/null and b/src/explore/util/assets/moonpay-cover.jpg differ diff --git a/src/explore/util/assets/moonpay-logo.svg b/src/explore/util/assets/moonpay-logo.svg new file mode 100644 index 0000000..f410d92 --- /dev/null +++ b/src/explore/util/assets/moonpay-logo.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/explore/util/assets/pact-cover.jpg b/src/explore/util/assets/pact-cover.jpg new file mode 100644 index 0000000..8c00077 Binary files /dev/null and b/src/explore/util/assets/pact-cover.jpg differ diff --git a/src/explore/util/assets/pact-logo.svg b/src/explore/util/assets/pact-logo.svg new file mode 100644 index 0000000..5ff724c --- /dev/null +++ b/src/explore/util/assets/pact-logo.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/src/explore/util/assets/randgallery-cover.jpg b/src/explore/util/assets/randgallery-cover.jpg new file mode 100644 index 0000000..1ee6bc1 Binary files /dev/null and b/src/explore/util/assets/randgallery-cover.jpg differ diff --git a/src/explore/util/assets/randgallery-logo.svg b/src/explore/util/assets/randgallery-logo.svg new file mode 100644 index 0000000..bec5b3b --- /dev/null +++ b/src/explore/util/assets/randgallery-logo.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/explore/util/assets/tinyman-cover.jpg b/src/explore/util/assets/tinyman-cover.jpg new file mode 100644 index 0000000..9c90e0e Binary files /dev/null and b/src/explore/util/assets/tinyman-cover.jpg differ diff --git a/src/explore/util/assets/tinyman-logo.svg b/src/explore/util/assets/tinyman-logo.svg new file mode 100644 index 0000000..a6cc4db --- /dev/null +++ b/src/explore/util/assets/tinyman-logo.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/explore/util/assets/wyre-cover.jpg b/src/explore/util/assets/wyre-cover.jpg new file mode 100644 index 0000000..67bc2c9 Binary files /dev/null and b/src/explore/util/assets/wyre-cover.jpg differ diff --git a/src/explore/util/assets/wyre-logo.svg b/src/explore/util/assets/wyre-logo.svg new file mode 100644 index 0000000..0e18649 --- /dev/null +++ b/src/explore/util/assets/wyre-logo.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/explore/util/exploreConstants.ts b/src/explore/util/exploreConstants.ts new file mode 100644 index 0000000..ae0b01b --- /dev/null +++ b/src/explore/util/exploreConstants.ts @@ -0,0 +1,30 @@ +import {TabItem} from "@hipo/react-ui-toolkit"; + +const EXPLORE_CATEGORIES: TabItem[] = [ + { + id: "recommended", + content: "Recommended" + }, + { + id: "add_funds", + content: "Add Funds" + }, + { + id: "browse_nfts", + content: "Browse NFTs" + }, + { + id: "swap", + content: "Swap" + }, + { + id: "stake", + content: "Stake" + } + // { + // id: "shop", + // content: "Shop" + // } +]; + +export {EXPLORE_CATEGORIES}; diff --git a/src/explore/util/exploreItems.json b/src/explore/util/exploreItems.json new file mode 100644 index 0000000..2b3a091 --- /dev/null +++ b/src/explore/util/exploreItems.json @@ -0,0 +1,110 @@ +[ + { + "name": "Tinyman", + "description": "Swap and stake on the original Algorand DEX", + "cover": "tinyman-cover.jpg", + "logo": "tinyman-logo.svg", + "cta_text": "Tinyman", + "cta_url": "https://app.tinyman.org", + "category": "recommended,swap,stake" + }, + { + "name": "Moonpay", + "description": "Buy ALGO quickly", + "cover": "moonpay-cover.jpg", + "logo": "moonpay-logo.svg", + "cta_text": "Moonpay", + "cta_url": "", + "category": "add_funds,all,buy_algo" + }, + { + "name": "Banxa", + "description": "Buy or sell ALGO, USDC, USDT globally", + "cover": "banxa-cover.jpg", + "logo": "banxa-logo.svg", + "cta_text": "Banxa", + "cta_url": "", + "category": "add_funds,all,buy_algo,buy_usdc,buy_usdt" + }, + { + "name": "Wyre", + "description": "Buy ALGO, USDC, USDT", + "cover": "wyre-cover.jpg", + "logo": "wyre-logo.svg", + "cta_text": "Wyre", + "cta_url": "", + "category": "add_funds,all,buy_algo,buy_usdc,buy_usdt" + }, + { + "name": "Coinbase", + "description": "Transfer your crypto to Pera securely", + "cover": "coinbase-cover.jpg", + "logo": "coinbase-logo.svg", + "cta_text": "Coinbase", + "cta_url": "", + "category": "add_funds,all,transfer" + }, + { + "name": "AlgoxNFT", + "description": "Auctions, shuffles and NFT collections", + "cover": "algoxnft-cover.jpg", + "logo": "algoxnft-logo.svg", + "cta_text": "AlgoxNFT", + "cta_url": "https://algoxnft.com/", + "category": "recommended,browse_nfts" + }, + { + "name": "Rand Gallery", + "description": "Latest and popular NFT listings", + "cover": "randgallery-cover.jpg", + "logo": "randgallery-logo.svg", + "cta_text": "Rand Gallery", + "cta_url": "https://www.randgallery.com/", + "category": "recommended,browse_nfts" + }, + { + "name": "AlgoFi", + "description": "Swap, earn interest, borrow and trade", + "cover": "algofi-cover.jpg", + "logo": "algofi-logo.svg", + "cta_text": "AlgoFi", + "cta_url": "https://app.algofi.org", + "category": "swap,stake" + }, + { + "name": "Humble", + "description": "Swap, earn interest and participate in yield farming", + "cover": "humble-cover.jpg", + "logo": "humble-logo.svg", + "cta_text": "Humble", + "cta_url": "https://app.humble.sh", + "category": "swap" + }, + { + "name": "Pact", + "description": "Low cost, fast swaps on Algorand", + "cover": "pact-cover.jpg", + "logo": "pact-logo.svg", + "cta_text": "Pact", + "cta_url": "https://app.pact.fi", + "category": "swap" + }, + { + "name": "FolksFinance", + "description": "Borrow and lend, participate in Liquid Governance", + "cover": "folksfinance-cover.jpg", + "logo": "folksfinance-logo.svg", + "cta_text": "FolksFinance", + "cta_url": "https://app.folks.finance", + "category": "stake" + }, + { + "name": "GARD", + "description": "Borrow and stake with the GARD protocol", + "cover": "gard-cover.jpg", + "logo": "gard-logo.svg", + "cta_text": "GARD", + "cta_url": "https://www.gard.money", + "category": "stake" + } +] diff --git a/src/explore/util/exploreTypes.d.ts b/src/explore/util/exploreTypes.d.ts new file mode 100644 index 0000000..0272fef --- /dev/null +++ b/src/explore/util/exploreTypes.d.ts @@ -0,0 +1,9 @@ +interface ExploreItem { + name: string; + description: string; + cover: string; + logo: string; + cta_text: string; + cta_url: string; + category: string; +} diff --git a/src/explore/util/exploreUtils.ts b/src/explore/util/exploreUtils.ts new file mode 100644 index 0000000..cda8f33 --- /dev/null +++ b/src/explore/util/exploreUtils.ts @@ -0,0 +1,19 @@ +import exploreItems from "./exploreItems.json"; + +/** + * Returns the explore items within the given category. + * @param {string} category + * @returns {ExploreItem[]} ExploreItem[] + */ +function getExploreItems(category?: string): ExploreItem[] { + let items = exploreItems; + + if (category?.length) { + // split by comma the categories and search each item + items = items.filter((item) => item.category?.split(",").includes(category)); + } + + return items; +} + +export {getExploreItems}; diff --git a/src/index.tsx b/src/index.tsx new file mode 100644 index 0000000..7d86853 --- /dev/null +++ b/src/index.tsx @@ -0,0 +1,130 @@ +// 3rd party CSS imports should come here +import "@hipo/react-ui-toolkit/dist/main.css"; + +import "./core/ui/typography/_fonts.scss"; +import "./core/ui/typography/_typography.scss"; +import "./core/ui/style/override/_override.scss"; +import "./core/ui/style/_align.scss"; +import "./core/ui/style/_measure.scss"; +import "./core/ui/style/_common.scss"; +import "./core/ui/style/color/_global-colors.scss"; +import "./core/ui/style/color/_shadow.scss"; +import "./core/ui/style/color/_theme.scss"; + +// animation +import "./core/ui/style/util/animate/_slide-in.scss"; +import "./core/ui/style/util/animate/_show-up.scss"; + +// 3rd party CSS override imports should come here +import "./core/ui/style/override/hipo-ui-toolkit/_button.scss"; +import "./core/ui/style/override/hipo-ui-toolkit/_form.scss"; +import "./core/ui/style/override/hipo-ui-toolkit/_input.scss"; +import "./core/ui/style/override/hipo-ui-toolkit/_checkbox-input.scss"; +import "./core/ui/style/override/hipo-ui-toolkit/_toggle.scss"; +import "./core/ui/style/override/hipo-ui-toolkit/_tab.scss"; +import "./core/ui/style/override/hipo-ui-toolkit/_select.scss"; + +import React from "react"; +import ReactDOM from "react-dom"; +import {BrowserRouter} from "react-router-dom"; +import {ToastContextProvider} from "@hipo/react-ui-toolkit"; +import WebFont from "webfontloader"; + +import App from "./core/app/App"; +import reportWebVitals from "./core/reportWebVitals"; +import {AppContextProvider} from "./core/app/AppContext"; +import {AppState} from "./core/app/appStateReducer"; +import ModalContextProvider from "./component/modal/context/ModalContextProvider"; +import {SimpleToastContextProvider} from "./component/simple-toast/SimpleToastProvider"; +import {isFirefoxPrivate, isSmallMobileDevice} from "./core/util/device/deviceUtils"; +import MobileLandingPage from "./not-supported/mobile/MobileLandingPage"; +import FirefoxIncognitoLandingPage from "./not-supported/firefox-incognito/FirefoxIncognitoLandingPage"; +import {isProductionBuild} from "./core/util/environment/environmentConstants"; +import {updateAPIsPreferredNetwork} from "./core/api/apiUtils"; +import {PortfolioContextProvider} from "./overview/context/PortfolioOverviewContext"; +import NavigationContextProvider from "./core/route/context/NavigationContext"; +import {getCommonAppState} from "./core/util/storage/web/webStorageUtils"; +import {appDBManager} from "./core/app/db"; + +if (isSmallMobileDevice()) { + ReactDOM.render( + + + , + document.getElementById("root") + ); +} else { + (async () => { + try { + if (await isFirefoxPrivate()) { + ReactDOM.render( + + + , + document.getElementById("root") + ); + } + + const { + theme, + preferredNetwork: storedNetwork, + hashedMasterkey + } = getCommonAppState(); + + const accountKeys = await appDBManager.getAllKeys("accounts"); + + const preferredNetwork = + storedNetwork || (isProductionBuild ? "mainnet" : "testnet"); + + updateAPIsPreferredNetwork(preferredNetwork); + + bootstrapApp({ + theme: theme || "light", + preferredNetwork, + hashedMasterkey, + accounts: {}, + sessions: {}, + hasConnection: false, + hasAccounts: accountKeys.length > 0 + }); + + WebFont.load({ + custom: { + families: ["Milan", "DMSans"], + urls: ["./core/ui/typography/_fonts.scss"] + } + }); + } catch (error) { + // handle indexedDB error state + console.error(error); + } + })(); +} + +function bootstrapApp(initialAppStateFromDB: AppState) { + ReactDOM.render( + + + + + + + + + + + + + + + + + , + document.getElementById("root") + ); +} + +// If you want to start measuring performance in your app, pass a function +// to log results (for example: reportWebVitals(console.log)) +// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals +reportWebVitals(); diff --git a/src/layouts/card-layout-without-route/CardLayoutWithoutRoute.tsx b/src/layouts/card-layout-without-route/CardLayoutWithoutRoute.tsx new file mode 100644 index 0000000..3786e76 --- /dev/null +++ b/src/layouts/card-layout-without-route/CardLayoutWithoutRoute.tsx @@ -0,0 +1,18 @@ +import "../card-layout/_card-layout.scss"; + +interface CardLayoutProps { + children: React.ReactNode; + hasOverlay?: boolean; +} + +function CardLayoutWithoutRoute({children, hasOverlay = false}: CardLayoutProps) { + return hasOverlay ? ( +
    +
    {children}
    +
    + ) : ( +
    {children}
    + ); +} + +export default CardLayoutWithoutRoute; diff --git a/src/layouts/card-layout/CardLayout.tsx b/src/layouts/card-layout/CardLayout.tsx new file mode 100644 index 0000000..ac1af89 --- /dev/null +++ b/src/layouts/card-layout/CardLayout.tsx @@ -0,0 +1,23 @@ +import "./_card-layout.scss"; + +import {Outlet} from "react-router-dom"; + +interface CardLayoutProps { + hasOverlay?: boolean; +} + +function CardLayout({hasOverlay = false}: CardLayoutProps) { + return hasOverlay ? ( +
    +
    + +
    +
    + ) : ( +
    + +
    + ); +} + +export default CardLayout; diff --git a/src/layouts/card-layout/_card-layout.scss b/src/layouts/card-layout/_card-layout.scss new file mode 100644 index 0000000..144e3a3 --- /dev/null +++ b/src/layouts/card-layout/_card-layout.scss @@ -0,0 +1,38 @@ +.card-layout { + position: relative; + + display: flex; + flex-direction: column; + + width: max-content; + + margin: auto; + padding: 28px; + + background: var(--card-default); + border-radius: 16px; + box-shadow: var(--shadow-small); +} + +.card-layout-overlay { + position: fixed; + top: 0; + bottom: 0; + left: 0; + right: 0; + + width: 100vw; + height: 100vh; + + background: var(--overlay); +} + +.card-layout-content { + @extend .card-layout; + + position: absolute; + top: 50%; + left: 50%; + + transform: translate(-50%, -50%); +} diff --git a/src/layouts/sidebar/SidebarLayout.tsx b/src/layouts/sidebar/SidebarLayout.tsx new file mode 100644 index 0000000..222fca1 --- /dev/null +++ b/src/layouts/sidebar/SidebarLayout.tsx @@ -0,0 +1,42 @@ +import "./_sidebar-layout.scss"; + +import {Outlet, useOutletContext} from "react-router-dom"; +import {useReducer} from "react"; +import classNames from "classnames"; + +import Sidebar from "../../component/page/sidebar/Sidebar"; +import { + initialSidebarState, + SidebarContextType, + sidebarStateReducer +} from "./sidebarStateReducer"; +import PageHeader from "../../component/page/header/PageHeader"; + +function SidebarLayout() { + const [state, dispatch] = useReducer(sidebarStateReducer, initialSidebarState); + + const sidebarLayoutClassnames = classNames("sidebar-layout", { + "sidebar-layout--is-navigation-disable": state.isSidebarDisable, + "sidebar-layout--hidden": !state.isSidebarVisible + }); + + return ( +
    + + +
    + + +
    + +
    +
    +
    + ); +} + +export function useSidebarContext() { + return useOutletContext(); +} + +export default SidebarLayout; diff --git a/src/layouts/sidebar/_sidebar-layout.scss b/src/layouts/sidebar/_sidebar-layout.scss new file mode 100644 index 0000000..aab896e --- /dev/null +++ b/src/layouts/sidebar/_sidebar-layout.scss @@ -0,0 +1,54 @@ +@import "../../core/ui/typography/typography-mixins"; + +.sidebar-layout { + display: flex; + flex-direction: column; + + width: 100vw; + min-height: 100vh; + + &--hidden { + .sidebar, + .sidebar-layout__topbar { + display: none; + } + } + + &--is-navigation-disable { + .sidebar__nav-list-item { + &:hover { + background-color: unset; + } + } + + .sidebar__nav-link { + @include text-color--gray-light(); + + pointer-events: none; + + &:visited { + color: var(--text-gray-light); + } + + svg { + path { + fill: var(--text-gray-light); + } + } + } + } +} + +.sidebar-layout__content { + width: 100%; + + padding-bottom: 40px; + padding-left: var(--sidebar-width); +} + +.sidebar-layout__body { + width: max-content; + max-width: 95%; + + margin: 0 auto; +} diff --git a/src/layouts/sidebar/sidebarStateReducer.ts b/src/layouts/sidebar/sidebarStateReducer.ts new file mode 100644 index 0000000..e836935 --- /dev/null +++ b/src/layouts/sidebar/sidebarStateReducer.ts @@ -0,0 +1,46 @@ +import {Dispatch} from "react"; + +export interface SidebarState { + isSidebarDisable: boolean; + isSidebarVisible: boolean; +} + +export interface SidebarContextType { + state: SidebarState; + dispatch: Dispatch; +} + +export const initialSidebarState: SidebarState = { + isSidebarDisable: false, + isSidebarVisible: true +}; + +export type SidebarStateReducerAction = { + type: "SET_SIDEBAR_STATUS"; + status: "visible" | "hidden" | "disabled"; +}; + +function sidebarStateReducer(state: SidebarState, action: SidebarStateReducerAction) { + let newState = state; + + switch (action.type) { + case "SET_SIDEBAR_STATUS": { + if (action.status === "visible") { + newState = {...state, isSidebarVisible: true}; + } else if (action.status === "hidden") { + newState = {...state, isSidebarVisible: false}; + } else if (action.status === "disabled") { + newState = {...state, isSidebarDisable: true}; + } + + break; + } + + default: + break; + } + + return newState; +} + +export {sidebarStateReducer}; diff --git a/src/not-supported/firefox-incognito/FirefoxIncognitoLandingPage.tsx b/src/not-supported/firefox-incognito/FirefoxIncognitoLandingPage.tsx new file mode 100644 index 0000000..cb4b34e --- /dev/null +++ b/src/not-supported/firefox-incognito/FirefoxIncognitoLandingPage.tsx @@ -0,0 +1,30 @@ +import "./_firefox-incognito-landing-page.scss"; + +import {ReactComponent as PeraLogo} from "../../core/ui/icons/pera-logo.svg"; +import firefoxIncognitoLandingPageImgSrc from "../../core/ui/image/firefox-not-supported.png"; + +function FirefoxIncognitoLandingPage() { + return ( +
    + + +
    + {"Globe + +
    + {"Pera Web Wallet is not supported on Firefox Private Browsing"} +
    + +
    + {"Please use a different browser or switch to regular browsing mode."} +
    +
    +
    + ); +} + +export default FirefoxIncognitoLandingPage; diff --git a/src/not-supported/firefox-incognito/_firefox-incognito-landing-page.scss b/src/not-supported/firefox-incognito/_firefox-incognito-landing-page.scss new file mode 100644 index 0000000..6269c05 --- /dev/null +++ b/src/not-supported/firefox-incognito/_firefox-incognito-landing-page.scss @@ -0,0 +1,38 @@ +.firefox-incognito-landing-page { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + + width: 100vw; + height: 100vh; + + color: var(--white); + background-color: var(--purple-500); + + text-align: center; + + .pera-logo { + position: absolute; + top: 10%; + left: 50%; + + width: 150px; + height: 56px; + + transform: translateX(-50%); + } + + .firefox-incognito-landing-page__header { + margin: 40px 0 16px; + } + + .firefox-incognito-landing-page__figure { + width: 50%; + } + + .firefox-incognito-landing-page__figure-img { + width: 75%; + height: auto; + } +} diff --git a/src/not-supported/mobile/MobileLandingPage.tsx b/src/not-supported/mobile/MobileLandingPage.tsx new file mode 100644 index 0000000..787e29c --- /dev/null +++ b/src/not-supported/mobile/MobileLandingPage.tsx @@ -0,0 +1,41 @@ +import "./_mobile-landing-page.scss"; + +import MobileNotSupportedImage from "../../core/ui/image/mobile-not-supported.svg"; +import {ReactComponent as PeraLogoWithText} from "../../core/ui/icons/pera-logo-with-text.svg"; + +import Image from "../../component/image/Image"; +import LinkButton from "../../component/button/LinkButton"; + +const PERA_MOBILE_APP_URL = "https://perawallet.app/download"; + +function MobileLandingPage() { + return ( +
    + {"three + +
    + + +

    + { + "Pera Web is not supported on mobile. Download Pera Mobile or use a desktop browser." + } +

    + + + {"Install Pera Wallet"} + +
    +
    + ); +} + +export default MobileLandingPage; diff --git a/src/not-supported/mobile/_mobile-landing-page.scss b/src/not-supported/mobile/_mobile-landing-page.scss new file mode 100644 index 0000000..ee37b65 --- /dev/null +++ b/src/not-supported/mobile/_mobile-landing-page.scss @@ -0,0 +1,15 @@ +.mobile-landing-page__heading-image { + max-width: 326px; + + margin-bottom: 77px; +} + +.mobile-landing-page__content { + padding: 0 40px; +} + +.mobile-landing-page__message { + margin: 32px 0 48px; + + color: var(--text-gray); +} diff --git a/src/overview/context/PortfolioOverviewContext.tsx b/src/overview/context/PortfolioOverviewContext.tsx new file mode 100644 index 0000000..f5966bd --- /dev/null +++ b/src/overview/context/PortfolioOverviewContext.tsx @@ -0,0 +1,29 @@ +import {createContext, ReactNode, useContext} from "react"; + +import usePortfolioOverview, {PortfolioOverview} from "../util/hook/usePortfolioOverview"; +import {SECOND_IN_MS} from "../../core/util/time/timeConstants"; + +const PortfolioContext = createContext(undefined as PortfolioOverview | undefined); + +PortfolioContext.displayName = "PortfolioContext"; + +// eslint-disable-next-line no-magic-numbers +const PORTFOLIO_OVERVIEW_POLLING_INTERVAL = SECOND_IN_MS * 3.5; + +export function PortfolioContextProvider({children}: {children: ReactNode}) { + const portfolioOverview = usePortfolioOverview({ + interval: PORTFOLIO_OVERVIEW_POLLING_INTERVAL + }); + + return ( + + {children} + + ); +} + +export function usePortfolioContext() { + const context = useContext(PortfolioContext); + + return context; +} diff --git a/src/overview/flow/OverviewFlow.tsx b/src/overview/flow/OverviewFlow.tsx new file mode 100644 index 0000000..24c4012 --- /dev/null +++ b/src/overview/flow/OverviewFlow.tsx @@ -0,0 +1,13 @@ +import {Routes, Route} from "react-router-dom"; + +import AccountOverview from "../page/overview/AccountOverview"; + +function OverviewFlow() { + return ( + + } /> + + ); +} + +export default OverviewFlow; diff --git a/src/overview/page/overview/AccountOverview.tsx b/src/overview/page/overview/AccountOverview.tsx new file mode 100644 index 0000000..8d585f9 --- /dev/null +++ b/src/overview/page/overview/AccountOverview.tsx @@ -0,0 +1,119 @@ +import "./_account-overview.scss"; + +import {useEffect} from "react"; +import {Navigate, Outlet} from "react-router-dom"; +import {useToaster} from "@hipo/react-ui-toolkit"; + +import {useAppContext} from "../../../core/app/AppContext"; +import ROUTES from "../../../core/route/routes"; +import AccountOverviewList from "./list/AccountOverviewList"; +import AccountOverviewPortfolioValue from "./portfolio-value/AccountOverviewPortfolioValue"; +import {usePortfolioContext} from "../../context/PortfolioOverviewContext"; +import AccountOnboardingOptionList from "../../../account/component/onboarding-option-list/AccountOnboardingOptionList"; +import {useSimpleToaster} from "../../../component/simple-toast/util/simpleToastHooks"; +import PeraToast from "../../../component/pera-toast/PeraToast"; +import {SECOND_IN_MS} from "../../../core/util/time/timeConstants"; +import webStorage, {STORED_KEYS} from "../../../core/util/storage/web/webStorage"; +import PeraLoader from "../../../component/loader/pera/PeraLoader"; +import {trimAccountName} from "../../../account/util/accountUtils"; +import useSetPageTitle from "../../../core/util/hook/useSetPageTitle"; + +const BACK_UP_ACCOUNTS_TIMEOUT = SECOND_IN_MS; + +function AccountOverview() { + const { + state: {accounts, hasAccounts} + } = useAppContext(); + const accountCount = Object.keys(accounts).length; + const portfolioOverview = usePortfolioContext(); + const simpleToaster = useSimpleToaster(); + const toaster = useToaster(); + + useSetPageTitle("Accounts"); + + useEffect(() => { + const createdNewAccount = webStorage.local.getItem(STORED_KEYS.CREATED_NEW_ACCOUNT); + let timeout: NodeJS.Timeout; + + if (createdNewAccount) { + simpleToaster.display({ + id: "backup-account-success-toast", + message: `New account "${trimAccountName(String(createdNewAccount))}" created!`, + type: "success" + }); + + setTimeout(() => { + toaster.display({ + autoClose: false, + id: "backup-account-warning-toast", + render() { + return ( + + ); + } + }); + }, BACK_UP_ACCOUNTS_TIMEOUT); + + webStorage.local.removeItem(STORED_KEYS.CREATED_NEW_ACCOUNT); + } + + return () => { + clearInterval(timeout); + }; + }); + + if (!hasAccounts) return ; + + if (!portfolioOverview) + return ; + + const { + accounts: portfolioOverviewAccounts, + portfolio_value_usd, + portfolio_value_algo + } = portfolioOverview; + + const portfolioAccounts = portfolioOverviewAccounts.filter( + (account) => account.address in accounts + ); + + return ( + <> +
    + + +
    +

    {"Accounts"}

    + + {accountCount} + +
    + + + + +
    + + + + ); +} + +export default AccountOverview; diff --git a/src/overview/page/overview/_account-overview.scss b/src/overview/page/overview/_account-overview.scss new file mode 100644 index 0000000..494fa23 --- /dev/null +++ b/src/overview/page/overview/_account-overview.scss @@ -0,0 +1,31 @@ +.account-overview { + width: 948px; + max-width: 100%; + + margin: auto; +} + +.account-overview__onboarding-option-list { + margin-top: 56px; +} + +.account-overview__accounts-heading { + display: flex; + align-items: center; + + margin-bottom: 16px; +} + +.account-overview-list__skeleton { + height: 240px; + + padding: 16px 0; + + background-color: var(--card-default); + border-radius: 16px; + box-shadow: var(--shadow-small); +} + +.account-overview__account-number { + margin-left: 8px; +} diff --git a/src/overview/page/overview/add-funds/AccountOverviewAddFundsModal.tsx b/src/overview/page/overview/add-funds/AccountOverviewAddFundsModal.tsx new file mode 100644 index 0000000..56b0720 --- /dev/null +++ b/src/overview/page/overview/add-funds/AccountOverviewAddFundsModal.tsx @@ -0,0 +1,73 @@ +import {ReactComponent as ArrowLeftIcon} from "../../../../core/ui/icons/arrow-left.svg"; + +import "./_account-overview-add-funds-modal.scss"; + +import SearchableAccountList from "../../../../account/component/list/searchable/SearchableAccountList"; +import Button from "../../../../component/button/Button"; +import {useModalDispatchContext} from "../../../../component/modal/context/ModalContext"; +import MoonPayModal, { + MOON_PAY_MODAL_ID +} from "../../../../core/integrations/moon-pay/modal/MoonPayModal"; + +export const ACCOUNT_OVERVIEW_ADD_FUNDS_MODAL_ID = "account-overview-add-funds-modal-id"; + +interface AccountOverviewAddFundsModalProps { + accounts: AccountOverview[]; +} + +function AccountOverviewAddFundsModal({accounts}: AccountOverviewAddFundsModalProps) { + const dispatchModalStateAction = useModalDispatchContext(); + + return ( +
    +
    + + +

    {"Select account"}

    +
    + + +
    + ); + + function handleSelectAccount(address: string) { + dispatchModalStateAction({ + type: "OPEN_MODAL", + payload: { + item: { + id: MOON_PAY_MODAL_ID, + modalContentLabel: "Add funds via Moonpay", + customClassName: "moon-pay-modal-container", + children: + } + } + }); + + closeSelectAccountModal(); + } + + function closeSelectAccountModal() { + dispatchModalStateAction({ + type: "CLOSE_MODAL", + payload: {id: ACCOUNT_OVERVIEW_ADD_FUNDS_MODAL_ID} + }); + } + + function handleCloseMoonPayModal() { + dispatchModalStateAction({type: "CLOSE_MODAL", payload: {id: MOON_PAY_MODAL_ID}}); + } + + function handleClose() { + dispatchModalStateAction({ + type: "CLOSE_MODAL", + payload: {id: ACCOUNT_OVERVIEW_ADD_FUNDS_MODAL_ID} + }); + } +} + +export default AccountOverviewAddFundsModal; diff --git a/src/overview/page/overview/add-funds/_account-overview-add-funds-modal.scss b/src/overview/page/overview/add-funds/_account-overview-add-funds-modal.scss new file mode 100644 index 0000000..c6b6d9a --- /dev/null +++ b/src/overview/page/overview/add-funds/_account-overview-add-funds-modal.scss @@ -0,0 +1,18 @@ +.account-overview-add-funds-modal { + width: 480px; +} + +.account-overview-add-funds-modal__go-back-button-container { + display: flex; + align-items: center; + + margin-bottom: 32px; + padding: 28px 28px 0 0; +} + +.account-overview-add-funds-modal__go-back-button { + &.button--custom { + margin-left: 8px; + padding: 0 16px; + } +} diff --git a/src/overview/page/overview/list/AccountOverviewList.tsx b/src/overview/page/overview/list/AccountOverviewList.tsx new file mode 100644 index 0000000..372e850 --- /dev/null +++ b/src/overview/page/overview/list/AccountOverviewList.tsx @@ -0,0 +1,46 @@ +import "./_account-overview-list.scss"; + +import {List} from "@hipo/react-ui-toolkit"; +import classNames from "classnames"; + +import AccountOverviewListItem from "./account-overview-list-item/AccountOverviewListItem"; +import {PortfolioOverview} from "../../../util/hook/usePortfolioOverview"; +import {sortAlphabetically} from "../../../../core/util/array/arrayUtils"; + +export interface AccountOverviewListProps { + accounts: PortfolioOverview["accounts"]; + className?: string; +} + +function AccountOverviewList({accounts, className}: AccountOverviewListProps) { + const accountOverviewListClassname = classNames("account-overview-list", className); + + return ( + + {({ + total_usd_value, + total_algo_value, + address, + standard_asset_count, + collectible_count + }) => ( + + )} + + ); + + function listItemKeyGenerator(item: PortfolioOverview["accounts"][number]) { + return item.address; + } +} + +export default AccountOverviewList; diff --git a/src/overview/page/overview/list/_account-overview-list.scss b/src/overview/page/overview/list/_account-overview-list.scss new file mode 100644 index 0000000..a28b158 --- /dev/null +++ b/src/overview/page/overview/list/_account-overview-list.scss @@ -0,0 +1,7 @@ +.account-overview-list { + padding: 16px 0; + + background-color: var(--card-default); + border-radius: 16px; + box-shadow: var(--shadow-small); +} diff --git a/src/overview/page/overview/list/account-options-dropdown/AccountOptionsDropdown.tsx b/src/overview/page/overview/list/account-options-dropdown/AccountOptionsDropdown.tsx new file mode 100644 index 0000000..097ede2 --- /dev/null +++ b/src/overview/page/overview/list/account-options-dropdown/AccountOptionsDropdown.tsx @@ -0,0 +1,218 @@ +import "./_account-options-dropdown.scss"; + +import {ReactComponent as MoreIcon} from "../../../../../core/ui/icons/more.svg"; + +import React from "react"; +import {useNavigate} from "react-router-dom"; +import {Select, List} from "@hipo/react-ui-toolkit"; + +import {ACCOUNT_DROPDOWN_OPTIONS} from "./accountOptionsDropdownConstants"; +import useClipboard from "../../../../../component/clipboard/useClipboard"; +import {useSimpleToaster} from "../../../../../component/simple-toast/util/simpleToastHooks"; +import {useModalDispatchContext} from "../../../../../component/modal/context/ModalContext"; +import AccountRemoveModal, { + ACCOUNT_REMOVE_MODAL_ID +} from "../../../../../account/component/account-remove-modal/AccountRemoveModal"; +import AccountRenameModal, { + ACCOUNT_RENAME_MODAL_ID +} from "../../../../../account/component/account-rename-modal/AccountRenameModal"; +import {useAppContext} from "../../../../../core/app/AppContext"; +import AccountShowQRModal, { + ACCOUNT_SHOW_QR_MODAL_ID +} from "../../../show-qr/AccountShowQR"; +import AccountShowPassphraseModal, { + ACCOUNT_SHOW_PASSPHRASE_MODAL_ID +} from "../../../show-passphrase/AccountShowPassphrase"; +import PasswordAccessPage, { + PASSWORD_ACCESS_MODAL_ID +} from "../../../../../password/page/access/PasswordAccessPage"; +import ROUTES from "../../../../../core/route/routes"; +import AssetOptinInfoModal from "../../../../../asset/opt-in/modal/info/AssetOptinInfoModal"; +import {ASSET_OPTIN_INFO_MODAL_ID} from "../../../../../asset/opt-in/modal/info/util/assetOptinInfoModalConstants"; +import webStorage, {STORED_KEYS} from "../../../../../core/util/storage/web/webStorage"; +import {ASSET_OPTIN_PAGE_SEARCH_PARAM} from "../../../../../asset/opt-in/page/AssetOptinPage"; + +interface AccountOptionsDropdownProps { + address: AccountOverview["address"]; +} + +export type AccountDropdownOption = {id: string; title: string; icon: React.ReactNode}; + +function AccountOptionsDropdown({address}: AccountOptionsDropdownProps) { + const navigate = useNavigate(); + const { + state: {accounts} + } = useAppContext(); + const {copyToClipboard} = useClipboard(); + const simpleToaster = useSimpleToaster(); + const dispatchModalStateAction = useModalDispatchContext(); + + return ( + + ); + + function handleOptionSelect(option: AccountDropdownOption | null) { + if (!option) return; + + switch (option.id as typeof ACCOUNT_DROPDOWN_OPTIONS[number]["id"]) { + case "copy-address": + copyToClipboard(address); + + simpleToaster.display({ + message: "Account address copied!", + type: "success" + }); + break; + + case "show-qr": + dispatchModalStateAction({ + type: "OPEN_MODAL", + payload: { + item: { + id: ACCOUNT_SHOW_QR_MODAL_ID, + modalContentLabel: "Account QR code modal", + children: + } + } + }); + break; + + case "show-passphrase": + dispatchModalStateAction({ + type: "OPEN_MODAL", + payload: { + item: { + id: PASSWORD_ACCESS_MODAL_ID, + modalContentLabel: "Remove Account Confirmation", + children: ( + + ) + } + } + }); + break; + + case "rename-account": + dispatchModalStateAction({ + type: "OPEN_MODAL", + payload: { + item: { + id: ACCOUNT_RENAME_MODAL_ID, + modalContentLabel: "Rename account", + children: + } + } + }); + break; + + case "remove-account": + dispatchModalStateAction({ + type: "OPEN_MODAL", + payload: { + item: { + id: ACCOUNT_REMOVE_MODAL_ID, + modalContentLabel: "Remove account", + customClassName: "account-options-dropdown__remove-account-modal", + children: + } + } + }); + break; + + case "send-transaction": + navigate(`${ROUTES.SEND_TXN.ROUTE}`, { + state: {address} + }); + break; + + case "opt-in-to-asset": + if (webStorage.local.getItem(STORED_KEYS.HIDE_ASSET_OPTIN_INFO_MODAL)) { + navigate({ + pathname: ROUTES.ASSET_OPTIN.ROUTE, + search: `?${ASSET_OPTIN_PAGE_SEARCH_PARAM}=${accounts[address].address}` + }); + } else { + dispatchModalStateAction({ + type: "OPEN_MODAL", + payload: { + item: { + id: ASSET_OPTIN_INFO_MODAL_ID, + modalContentLabel: "Opt-in to asset", + children: ( + + ) + } + } + }); + } + break; + + default: + break; + } + } + + function openPassphraseModal() { + dispatchModalStateAction({ + type: "CLOSE_MODAL", + payload: { + id: PASSWORD_ACCESS_MODAL_ID + } + }); + + dispatchModalStateAction({ + type: "OPEN_MODAL", + payload: { + item: { + id: ACCOUNT_SHOW_PASSPHRASE_MODAL_ID, + modalContentLabel: "Account QR code modal", + children: + } + } + }); + } + + function closeModal() { + dispatchModalStateAction({ + type: "CLOSE_ALL_MODALS" + }); + } +} + +export default AccountOptionsDropdown; diff --git a/src/overview/page/overview/list/account-options-dropdown/_account-options-dropdown.scss b/src/overview/page/overview/list/account-options-dropdown/_account-options-dropdown.scss new file mode 100644 index 0000000..39e7d37 --- /dev/null +++ b/src/overview/page/overview/list/account-options-dropdown/_account-options-dropdown.scss @@ -0,0 +1,93 @@ +.account-options-dropdown__list { + bottom: 0; + left: 0; + + display: flex; + flex-direction: column; + align-items: flex-start; + + padding: 6px 0; + + border-radius: 12px; +} + +.account-options-dropdown__list-item { + display: flex; + align-items: center; + gap: 16px; + + width: calc(100% - 40px); + + margin: 0 20px; + padding: 6px 0; + + color: var(--text-gray); + + .copy-icon, + .qr-code-icon, + .key-icon, + .share-icon, + .pen-icon, + .opt-in-icon { + path, + rect { + fill: var(--text-gray-light); + } + } + + &:hover { + color: var(--text-main); + + .copy-icon, + .qr-code-icon, + .key-icon, + .share-icon, + .pen-icon, + .opt-in-icon { + path, + rect { + fill: var(--text-main); + } + } + } + + &:last-child { + color: var(--helper-red-default); + + .unlink-icon { + path { + fill: var(--helper-red-default); + } + } + } + + &:nth-child(3), + &:nth-child(5) { + margin-bottom: 4px; + padding-bottom: 10px; + + border-bottom: 1px solid var(--gray-200); + } + + .more-icon { + path { + fill: var(--light-button-text); + } + } +} + +.account-overview-dropdown__header-button { + justify-content: center; + + width: 28px; + height: 28px; + + padding: 0; + + background-color: var(--light-button-bg); + border-radius: 8px; +} + +.account-options-dropdown__remove-account-modal { + width: 480px; +} diff --git a/src/overview/page/overview/list/account-options-dropdown/accountOptionsDropdownConstants.tsx b/src/overview/page/overview/list/account-options-dropdown/accountOptionsDropdownConstants.tsx new file mode 100644 index 0000000..a056ba7 --- /dev/null +++ b/src/overview/page/overview/list/account-options-dropdown/accountOptionsDropdownConstants.tsx @@ -0,0 +1,45 @@ +import {ReactComponent as CopyIcon} from "../../../../../core/ui/icons/copy.svg"; +import {ReactComponent as QRCodeIcon} from "../../../../../core/ui/icons/qr-code.svg"; +import {ReactComponent as KeyIcon} from "../../../../../core/ui/icons/key.svg"; +import {ReactComponent as ShareIcon} from "../../../../../core/ui/icons/share.svg"; +import {ReactComponent as OptinIcon} from "../../../../../core/ui/icons/opt-in.svg"; +import {ReactComponent as PenIcon} from "../../../../../core/ui/icons/pen.svg"; +import {ReactComponent as UnlinkIcon} from "../../../../../core/ui/icons/unlink.svg"; + +export const ACCOUNT_DROPDOWN_OPTIONS = [ + { + id: "copy-address", + title: "Copy address", + icon: + }, + { + id: "show-qr", + title: "View account QR", + icon: + }, + { + id: "show-passphrase", + title: "View passphrase", + icon: + }, + { + id: "send-transaction", + title: "Send transaction", + icon: + }, + { + id: "opt-in-to-asset", + title: "Opt-in to asset", + icon: + }, + { + id: "rename-account", + title: "Rename account", + icon: + }, + { + id: "remove-account", + title: "Remove account", + icon: + } +] as const; diff --git a/src/overview/page/overview/list/account-overview-list-item/AccountOverviewListItem.tsx b/src/overview/page/overview/list/account-overview-list-item/AccountOverviewListItem.tsx new file mode 100644 index 0000000..0094f5a --- /dev/null +++ b/src/overview/page/overview/list/account-overview-list-item/AccountOverviewListItem.tsx @@ -0,0 +1,120 @@ +import "./_account-overview-list-item.scss"; + +import {memo} from "react"; +import {ListItem} from "@hipo/react-ui-toolkit"; + +import { + getAccountIcon, + trimAccountAddress +} from "../../../../../account/util/accountUtils"; +import ClipboardButton from "../../../../../component/clipboard/button/ClipboardButton"; +import AccountOptionsDropdown from "../account-options-dropdown/AccountOptionsDropdown"; +import {ALGO_UNIT} from "../../../../../core/ui/typography/typographyConstants"; +import {useAppContext} from "../../../../../core/app/AppContext"; +import {defaultPriceFormatter} from "../../../../../core/util/number/numberUtils"; +import FormatUSDBalance from "../../../../../component/format-balance/usd/FormatUSDBalance"; +import {getPeraExplorerLink} from "../../../../../core/util/pera/explorer/getPeraExplorerLink"; +import Tooltip from "../../../../../component/tooltip/Tooltip"; + +export type AccountOverviewListItemProps = { + accountUSDValue: AccountOverview["total_usd_value"]; + accountALGOValue: AccountOverview["total_algo_value"]; + address: AccountOverview["address"]; + assetCount: AccountOverview["standard_asset_count"]; + collectibleCount: AccountOverview["collectible_count"]; +}; + +function AccountOverviewListItem({ + accountUSDValue, + accountALGOValue, + address, + assetCount, + collectibleCount +}: AccountOverviewListItemProps) { + const { + state: {accounts, preferredNetwork} + } = useAppContext(); + const {algoFormatter} = defaultPriceFormatter(); + const peraExplorerLink = getPeraExplorerLink({ + id: address, + type: "account-detail", + network: preferredNetwork + }); + // Accounts always have at least 1 asset(ALGO) as a product decision + const accountAssetCount = assetCount && assetCount > 0 ? assetCount : 1; + + return ( + + + {getAccountIcon({type: accounts[address].type, width: 32, height: 32})} + +
    + {accounts[address]?.name && ( + + {accounts[address].name} + + )} + +

    + {trimAccountAddress(address)} +

    +
    + +
    + + {accountAssetCount} + + + + {"Assets"} + +
    + +
    + + {collectibleCount} + + + + {"NFTs"} + +
    + +
    + + {`${ALGO_UNIT}${algoFormatter(Number(accountALGOValue), { + maximumFractionDigits: 2 + })}`} + + + +
    +
    + + + + + + +
    + ); +} + +export default memo(AccountOverviewListItem); diff --git a/src/overview/page/overview/list/account-overview-list-item/_account-overview-list-item.scss b/src/overview/page/overview/list/account-overview-list-item/_account-overview-list-item.scss new file mode 100644 index 0000000..dd3465f --- /dev/null +++ b/src/overview/page/overview/list/account-overview-list-item/_account-overview-list-item.scss @@ -0,0 +1,75 @@ +.account-overview-list-item { + position: relative; + + display: grid; + align-items: center; + grid-template-columns: auto 28px 28px; + gap: 16px; + + margin: 0 16px; + padding-right: 12px; + + transition: background-color var(--default-animation); + + &:hover { + background-color: var(--purple-50); + border-radius: 12px; + } +} + +.account-overview-list-item__link { + display: grid; + align-items: center; + grid-template-columns: 32px 1fr 96px 96px minmax(144px, max-content); + gap: 16px; + + padding: 12px 0 12px 12px; + + &:hover { + cursor: pointer; + } +} + +.account-overview-list-item__grid-cell { + display: grid; + + text-align: center; + + &:nth-child(2) { + text-align: left; + } + + &:nth-child(5n) { + margin-right: 20px; + + text-align: right; + } +} + +.account-overview-list-item__clipboard-button { + --button-height: 28px; + + border-radius: 8px; + + .clipboard-button__content { + .copy-icon { + margin-right: 2px; + + path { + fill: var(--light-button-text); + } + } + } +} + +.account-overview-list-item__skeleton { + display: flex; + align-items: center; + justify-content: center; + + height: 65px; + + &:not(:last-child) { + border-bottom: 1px solid var(--gray-100); + } +} diff --git a/src/overview/page/overview/portfolio-value/AccountOverviewPortfolioValue.tsx b/src/overview/page/overview/portfolio-value/AccountOverviewPortfolioValue.tsx new file mode 100644 index 0000000..d1ee2fc --- /dev/null +++ b/src/overview/page/overview/portfolio-value/AccountOverviewPortfolioValue.tsx @@ -0,0 +1,107 @@ +import {ReactComponent as PlusIcon} from "../../../../core/ui/icons/plus.svg"; +import {ReactComponent as AlgoIcon} from "../../../../core/ui/icons/algo.svg"; +import {ReactComponent as AddFundsIcon} from "../../../../core/ui/icons/add-funds.svg"; + +import "./_account-overview-portfolio-value.scss"; + +import {memo} from "react"; + +import {defaultPriceFormatter} from "../../../../core/util/number/numberUtils"; +import FormatUSDBalance from "../../../../component/format-balance/usd/FormatUSDBalance"; +import LinkButton from "../../../../component/button/LinkButton"; +import ROUTES from "../../../../core/route/routes"; +import Button from "../../../../component/button/Button"; +import {useModalDispatchContext} from "../../../../component/modal/context/ModalContext"; +import AccountOverviewAddFundsModal, { + ACCOUNT_OVERVIEW_ADD_FUNDS_MODAL_ID +} from "../add-funds/AccountOverviewAddFundsModal"; +import {usePortfolioContext} from "../../../context/PortfolioOverviewContext"; + +interface AccountOverviewPortfolioValueProps { + portfolioValueALGO: string; + portfolioValueUSD: string; +} + +function AccountOverviewPortfolioValue({ + portfolioValueALGO, + portfolioValueUSD +}: AccountOverviewPortfolioValueProps) { + const [algoValue, usdValue] = [portfolioValueALGO, portfolioValueUSD].map(Number); + const {algoFormatter} = defaultPriceFormatter(); + const dispatchModalStateAction = useModalDispatchContext(); + const portfolioOverview = usePortfolioContext(); + + return ( +
    +

    {"Portfolio Value"}

    + +
    +
    +
    + + + + +

    + {algoFormatter(algoValue, { + maximumFractionDigits: 2 + })} +

    +
    + +
    + + + + + + {"Add Account"} + +
    +
    + + +
    +
    + ); + + function handleAddFundsClick() { + dispatchModalStateAction({ + type: "OPEN_MODAL", + payload: { + item: { + id: ACCOUNT_OVERVIEW_ADD_FUNDS_MODAL_ID, + modalContentLabel: "Select an Account to Opt-in", + customClassName: "account-overview-portfolio-value__add-funds-modal", + children: ( + + ) + } + } + }); + } +} + +export default memo(AccountOverviewPortfolioValue); diff --git a/src/overview/page/overview/portfolio-value/_account-overview-portfolio-value.scss b/src/overview/page/overview/portfolio-value/_account-overview-portfolio-value.scss new file mode 100644 index 0000000..7ce4aef --- /dev/null +++ b/src/overview/page/overview/portfolio-value/_account-overview-portfolio-value.scss @@ -0,0 +1,71 @@ +.account-overview-portfolio-value { + margin-bottom: 40px; +} + +.account-overview-portfolio-value__body-container { + margin-top: 16px; + padding-bottom: 20px; + + border-bottom: 1px solid var(--gray-200); +} + +.account-overview-portfolio-value__body { + display: flex; + align-items: center; + justify-content: space-between; +} + +.account-overview-portfolio-value__algo { + gap: 12px; +} + +.account-overview-portfolio-value__algo__icon { + display: flex; + align-items: center; + justify-content: center; + + width: 32px; + height: 32px; + + background-color: var(--gray-800); + border-radius: 100%; + + svg path { + fill: var(--white); + } +} + +.account-overview-portfolio-value__algo__value { + color: var(--gray-800); +} + +.account-overview-portfolio-value__usd { + margin-top: 12px; +} + +.account-overview-portfolio-value__body-cta-group { + display: flex; + gap: 16px; +} + +.account-overview-portfolio-value__add-funds-modal { + .modal__body { + padding: 0; + } +} + +.account-overview-portfolio-value__add-funds { + gap: 8px; +} + +.account-overview-portfolio-value__add-account { + padding: 10px 16px; + + .plus-icon { + margin-right: 8px; + + path { + fill: var(--primary-button-text); + } + } +} diff --git a/src/overview/page/show-passphrase/AccountShowPassphrase.tsx b/src/overview/page/show-passphrase/AccountShowPassphrase.tsx new file mode 100644 index 0000000..c970a73 --- /dev/null +++ b/src/overview/page/show-passphrase/AccountShowPassphrase.tsx @@ -0,0 +1,115 @@ +import {ReactComponent as ArrowRightIcon} from "../../../core/ui/icons/arrow-right.svg"; +import {ReactComponent as KeyIcon} from "../../../core/ui/icons/key.svg"; + +import "./_account-show-passphrase.scss"; + +import algosdk from "algosdk"; +import {Navigate} from "react-router-dom"; +import {useEffect} from "react"; +import {List, ListItem} from "@hipo/react-ui-toolkit"; + +import ClipboardButton from "../../../component/clipboard/button/ClipboardButton"; +import InfoBox from "../../../component/info-box/InfoBox"; +import {useAppContext} from "../../../core/app/AppContext"; +import {decryptSK} from "../../../core/util/nacl/naclUtils"; +import useAsyncProcess from "../../../core/network/async-process/useAsyncProcess"; +import ROUTES from "../../../core/route/routes"; +import Button from "../../../component/button/Button"; +import PeraLoader from "../../../component/loader/pera/PeraLoader"; + +interface AccountShowPassphraseModalProps { + address: string; + onClose: VoidFunction; +} + +export const ACCOUNT_SHOW_PASSPHRASE_MODAL_ID = "account-show-passphrase-modal"; + +function AccountShowPassphraseModal({address, onClose}: AccountShowPassphraseModalProps) { + const { + state: {accounts, masterkey} + } = useAppContext(); + const { + runAsyncProcess, + state: {data: passphrase, error, isRequestFetched} + } = useAsyncProcess(); + + useEffect(() => { + runAsyncProcess(deriveAccountMnemonic()); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, []); + + if (error) { + return ; + } + + if (!isRequestFetched) { + return ; + } + + return ( +
    +

    {"View Passphrase"}

    + + }> + + {"Learn more"} + + + + + + + {(word) => ( + + {word} + + )} + + + + {"Copy Passphrase"} + + + +
    + ); + + async function deriveAccountMnemonic() { + const secretKey = await decryptSK(accounts[address!].pk, masterkey!); + const mnemonic = algosdk.secretKeyToMnemonic(secretKey!); + + return mnemonic; + } + + function handleCloseClick() { + onClose(); + } +} + +export default AccountShowPassphraseModal; diff --git a/src/overview/page/show-passphrase/_account-show-passphrase.scss b/src/overview/page/show-passphrase/_account-show-passphrase.scss new file mode 100644 index 0000000..2c22dd3 --- /dev/null +++ b/src/overview/page/show-passphrase/_account-show-passphrase.scss @@ -0,0 +1,69 @@ +.account-show-passphrase-modal { + width: 424px; + height: auto; +} + +.account-show-passphrase-modal__header { + font-size: 24px; + font-weight: 600; + line-height: 29px; +} + +.account-show-passphrase-modal__info-box { + margin: 32px 0 16px; + + .key-icon { + path { + fill: var(--helper-orange-darker); + } + } +} + +.account-show-passphrase-modal__learn-more-link { + display: flex; + align-items: center; + + .arrow-right-icon { + margin-left: 2px; + } +} + +.account-show-passphrase-modal__passphrase-list { + display: grid; + grid-template: repeat(9, 1fr) / repeat(3, auto); + grid-gap: 8px 12px; + + grid-auto-flow: column; + + margin: 16px auto 24px; + padding: 24px 8px; + + background-color: var(--background); + border-radius: 12px; + + counter-reset: item; +} + +.account-show-passphrase-modal__passphrase-list-item { + transform: translateX(28px); + list-style-type: none; + + &:before { + margin-right: 8px; + + color: var(--text-gray-light); + + content: counter(item) " "; + counter-increment: item; + } + + &:nth-child(8n + 1):not(:last-child) { + grid-row: 1; + } +} + +.account-show-passphrase-modal__close-button { + width: 100%; + + margin-top: 12px; +} diff --git a/src/overview/page/show-qr/AccountShowQR.tsx b/src/overview/page/show-qr/AccountShowQR.tsx new file mode 100644 index 0000000..0953ad0 --- /dev/null +++ b/src/overview/page/show-qr/AccountShowQR.tsx @@ -0,0 +1,59 @@ +import "./_account-show-qr.scss"; + +import {useAppContext} from "../../../core/app/AppContext"; +import ClipboardButton from "../../../component/clipboard/button/ClipboardButton"; +import PeraQRCode from "../../../component/pera-qr-code/PeraQRCode"; +import Button from "../../../component/button/Button"; + +interface AccountShowQRModalProps { + address: string; + onClose: VoidFunction; +} + +export const ACCOUNT_SHOW_QR_MODAL_ID = "account-show-qr-modal"; + +function AccountShowQRModal({address, onClose}: AccountShowQRModalProps) { + const { + state: {accounts} + } = useAppContext(); + + const {name} = accounts[address]; + + return ( +
    + + +

    + {"ADDRESS FOR ACCOUNT "} + {name} +

    + +

    + {address} +

    + + + {"Copy Address"} + + + +
    + ); +} + +export default AccountShowQRModal; diff --git a/src/overview/page/show-qr/_account-show-qr.scss b/src/overview/page/show-qr/_account-show-qr.scss new file mode 100644 index 0000000..687faa1 --- /dev/null +++ b/src/overview/page/show-qr/_account-show-qr.scss @@ -0,0 +1,36 @@ +.account-show-qr-modal { + width: 480px; + + text-align: center; +} + +#react-qrcode-logo { + margin: 14px 0 42px; + + border-radius: 24px; + box-shadow: var(--shadow-xxlarge); +} + +.account-show-qr-modal__address { + width: 320px; + + margin: 16px auto 32px; + + word-wrap: break-word; +} + +.account-show-qr-modal__clipboard-button { + width: 132px; + + margin: 0 auto 48px; + + .copy-icon { + path { + fill: var(--secondary-button-text); + } + } +} + +.account-show-qr-modal__close-button { + width: 100%; +} diff --git a/src/overview/page/welcome/WelcomePage.tsx b/src/overview/page/welcome/WelcomePage.tsx new file mode 100644 index 0000000..de8ec16 --- /dev/null +++ b/src/overview/page/welcome/WelcomePage.tsx @@ -0,0 +1,47 @@ +import "./_welcome-page.scss"; + +import {Navigate} from "react-router-dom"; + +import AccountOnboardingOptionList from "../../../account/component/onboarding-option-list/AccountOnboardingOptionList"; +import {useAppContext} from "../../../core/app/AppContext"; +import {generateWelcomePageCopies} from "./util/welcomePageUtils"; +import ROUTES from "../../../core/route/routes"; +import RequirePassword from "../../../core/route/RequirePassword"; + +function WelcomePage() { + const { + state: {hashedMasterkey, hasAccounts} + } = useAppContext(); + const {title, description} = generateWelcomePageCopies(!!hashedMasterkey); + + if (hasAccounts) return ; + + return renderContent(); + + function renderContent() { + let content = ( +
    +

    {title}

    + + {description && ( +

    + {description} +

    + )} + + +
    + ); + + if (hashedMasterkey) { + content = {content}; + } + + return content; + } +} + +export default WelcomePage; diff --git a/src/overview/page/welcome/_welcome-page.scss b/src/overview/page/welcome/_welcome-page.scss new file mode 100644 index 0000000..9ef5ac0 --- /dev/null +++ b/src/overview/page/welcome/_welcome-page.scss @@ -0,0 +1,9 @@ +.welcome-page__description { + width: 452px; + + margin-top: 16px; +} + +.welcome-page__onboarding-option-list { + margin-top: 80px; +} diff --git a/src/overview/page/welcome/util/welcomePageUtils.ts b/src/overview/page/welcome/util/welcomePageUtils.ts new file mode 100644 index 0000000..4201a4a --- /dev/null +++ b/src/overview/page/welcome/util/welcomePageUtils.ts @@ -0,0 +1,13 @@ +function generateWelcomePageCopies(hasMasterkey: boolean) { + return hasMasterkey + ? { + title: "Now, add your first account" + } + : { + title: "Welcome to Pera Wallet", + description: + "Pera Wallet is the easiest and safest way to store, buy and swap on the Algorand blockchain." + }; +} + +export {generateWelcomePageCopies}; diff --git a/src/overview/util/hook/usePortfolioOverview.tsx b/src/overview/util/hook/usePortfolioOverview.tsx new file mode 100644 index 0000000..dd89ddd --- /dev/null +++ b/src/overview/util/hook/usePortfolioOverview.tsx @@ -0,0 +1,200 @@ +import {useCallback, useEffect, useReducer, useRef} from "react"; + +import {peraApi} from "../../../core/util/pera/api/peraApi"; +import HttpStatusCodes from "../../../core/network/httpStatusCodes"; +import {useAppContext} from "../../../core/app/AppContext"; +import useAsyncProcess from "../../../core/network/async-process/useAsyncProcess"; +import {AccountASA} from "../../../core/util/pera/api/peraApiModels"; +import {STORED_KEYS} from "../../../core/util/storage/web/webStorage"; +import {encryptedWebStorageUtils} from "../../../core/util/storage/web/webStorageUtils"; +import {assetDBManager} from "../../../core/app/db"; + +export type PortfolioOverview = Omit & { + accounts: (AccountOverview & {accountName?: string})[]; +}; + +const defaultPortfolioContextState: PortfolioOverview = { + current_round: "", + portfolio_value_usd: "", + portfolio_value_algo: "", + accounts: [] +}; + +function usePortfolioOverview(options?: { + interval?: number; +}): PortfolioOverview | undefined { + const { + state: {accounts, preferredNetwork, masterkey} + } = useAppContext(); + const preferredNetworkRef = useRef(preferredNetwork); + const lastKnownPortfolioOverviewRef = useRef( + Object.keys(accounts).length === 0 ? defaultPortfolioContextState : undefined + ); + const { + state: {data: walletAssetsDetail}, + runAsyncProcess: runFetchAssetDetailsAsyncProcess + } = useAsyncProcess(); + + // https://reactjs.org/docs/hooks-faq.html#is-there-something-like-forceupdate + const [_, triggerUpdate] = useReducer((x) => x + 1, 0); + + // asset-details fetching on bg in case of overview change + // set fetched asset-detail values in DB + useEffect(() => { + (async () => { + if (walletAssetsDetail) { + try { + await assetDBManager.setAllAssets()(walletAssetsDetail); + + triggerUpdate(); + } catch (error) { + console.error(error); + } + } + })(); + }, [walletAssetsDetail]); + + const addNewlyCreatedUserAccounts = useCallback( + (overviewData?: AppDBOverview) => { + if (!overviewData) return undefined; + + return { + ...overviewData, + + // add newly created but not activated accounts in block + // these accounts not returned by BE + accounts: Object.values(accounts).map((account) => { + const foundAccount = overviewData?.accounts.find( + (accountOverview) => accountOverview.address === account.address + ); + + if (foundAccount) { + return { + ...foundAccount, + accountName: accounts[account.address]?.name || account.address + }; + } + + return { + address: account.address, + accountName: account.name, + name: null, + collectible_count: 0, + standard_asset_count: 1, + total_algo_value: "0.00", + total_usd_value: "0.00" + }; + }) + }; + }, + [accounts] + ); + + const fetchLastKnownOverviewData = useCallback( + async (fetchOptions?: {refresh?: boolean}) => { + const isTabFocused = document.hasFocus(); + + if (!masterkey || !isTabFocused || Object.keys(accounts).length <= 0) { + return; + } + + let shouldTriggerUpdate = fetchOptions?.refresh || false; + let staleOverviewData = lastKnownPortfolioOverviewRef.current; + let revalidatedOverviewData: PortfolioOverview | undefined; + + if (!staleOverviewData) { + staleOverviewData = (await encryptedWebStorageUtils(masterkey).get( + STORED_KEYS.STALE_PORTFOLIO_OVERVIEW + )) as PortfolioOverview | undefined; + + // first render getting stale data + shouldTriggerUpdate = true; + } + + try { + revalidatedOverviewData = await peraApi.getMultipleAccountOverview({ + account_addresses: Object.keys(accounts), + last_known_round: fetchOptions?.refresh + ? undefined + : staleOverviewData?.current_round, + exclude_opt_ins: true + }); + + // fetch asset details on bg + runFetchAssetDetailsAsyncProcess( + peraApi.getAllMultipleAccountAssets( + revalidatedOverviewData.accounts.map((account) => account.address) + ) + ); + + // trigger update with new values + shouldTriggerUpdate = true; + } catch (error: any) { + // if NOT_MODIFIED, return stale data + if (error.statusCode !== HttpStatusCodes.NOT_MODIFIED) { + // Internal Server Error + console.error(error); + } + } finally { + let overviewData = staleOverviewData; + + if (revalidatedOverviewData) { + overviewData = revalidatedOverviewData; + } + + const overviewDataWithNewAccounts = addNewlyCreatedUserAccounts(overviewData); + + if (overviewDataWithNewAccounts) { + await encryptedWebStorageUtils(masterkey).set( + STORED_KEYS.STALE_PORTFOLIO_OVERVIEW, + overviewDataWithNewAccounts + ); + + lastKnownPortfolioOverviewRef.current = overviewDataWithNewAccounts; + } + + if (shouldTriggerUpdate) { + triggerUpdate(); + } + } + }, + [accounts, addNewlyCreatedUserAccounts, masterkey, runFetchAssetDetailsAsyncProcess] + ); + + // send initial request and set the timer for polling if interval is given + useEffect(() => { + let intervalId: NodeJS.Timer | undefined; + + fetchLastKnownOverviewData(); + + if (options?.interval) { + intervalId = setInterval(() => fetchLastKnownOverviewData(), options?.interval); + } + + return () => { + if (intervalId) { + clearInterval(intervalId); + } + }; + }, [fetchLastKnownOverviewData, options?.interval]); + + // fetch immediately cases + // network changed or account added + useEffect(() => { + if ( + preferredNetworkRef.current !== preferredNetwork || + (lastKnownPortfolioOverviewRef.current && + Object.keys(accounts).length !== + lastKnownPortfolioOverviewRef?.current.accounts.length) + ) { + fetchLastKnownOverviewData({refresh: true}); + + preferredNetworkRef.current = preferredNetwork; + lastKnownPortfolioOverviewRef.current = undefined; + } + }, [accounts, fetchLastKnownOverviewData, preferredNetwork]); + + return lastKnownPortfolioOverviewRef.current; +} + +export default usePortfolioOverview; diff --git a/src/password/flow/PasswordFlow.tsx b/src/password/flow/PasswordFlow.tsx new file mode 100644 index 0000000..81beb8f --- /dev/null +++ b/src/password/flow/PasswordFlow.tsx @@ -0,0 +1,28 @@ +import {Routes, Route, Navigate} from "react-router-dom"; + +import Page from "../../component/page/Page"; +import ROUTES from "../../core/route/routes"; +import CardLayout from "../../layouts/card-layout/CardLayout"; +import PasswordAccessPage from "../page/access/PasswordAccessPage"; +import PasswordCreatePage from "../page/create/PasswordCreatePage"; + +function PasswordFlow() { + return ( + + }> + }> + } /> + + } + /> + + + + } /> + + ); +} + +export default PasswordFlow; diff --git a/src/password/page/access/PasswordAccessPage.tsx b/src/password/page/access/PasswordAccessPage.tsx new file mode 100644 index 0000000..0b9585e --- /dev/null +++ b/src/password/page/access/PasswordAccessPage.tsx @@ -0,0 +1,253 @@ +import {ReactComponent as PasswordVisibleIcon} from "../../../core/ui/icons/password-visible.svg"; +import {ReactComponent as PasswordHiddenIcon} from "../../../core/ui/icons/password-hidden.svg"; +import {ReactComponent as LockPasswordLoginIcon} from "../../../core/ui/icons/lock-password-login.svg"; +import {ReactComponent as LockPasswordLoginErrorIcon} from "../../../core/ui/icons/lock-password-login-error.svg"; +import {ReactComponent as LockPasswordLoginSuccessIcon} from "../../../core/ui/icons/lock-password-login-success.svg"; +import {ReactComponent as WarningIcon} from "../../../core/ui/icons/warning.svg"; +import {ReactComponent as CheckmarkIcon} from "../../../core/ui/icons/checkmark.svg"; + +import "./_password-access-page.scss"; + +import {SyntheticEvent} from "react"; +import {useNavigate} from "react-router"; +import {Navigate, To} from "react-router-dom"; +import {FormField} from "@hipo/react-ui-toolkit"; +import classNames from "classnames"; + +import ROUTES from "../../../core/route/routes"; +import {useAppContext} from "../../../core/app/AppContext"; +import useFormito from "../../../core/util/hook/formito/useFormito"; +import {hashPassword} from "../../../core/util/nacl/naclUtils"; +import Button, {ButtonProps} from "../../../component/button/Button"; +import PeraPasswordInput from "../../../component/pera-password-input/PeraPasswordInput"; +import useLocationWithState from "../../../core/util/hook/useLocationWithState"; +import {appDBManager} from "../../../core/app/db"; + +const initialPasswordAccessForm = { + isDirty: false, + accessStatus: undefined as undefined | "error" | "success", + errorMessages: [] as string[] +}; + +interface PasswordAccessPageProps { + title?: string; + description?: string; + ctaText?: string; + ctaType?: ButtonProps["buttonType"]; + onSubmit?: VoidFunction; + onCancel?: VoidFunction; + hasCancelButton?: boolean; + customClassName?: string; + type?: "default" | "modal" | "connect-new-tab" | "embedded"; +} + +export const PASSWORD_ACCESS_MODAL_ID = "password-access-modal"; + +type LocationState = { + from: Location; + isNavigated?: boolean; + ctaText?: string; +}; + +function PasswordAccessPage({ + title, + description, + ctaText, + onSubmit, + ctaType = "primary", + onCancel, + hasCancelButton, + customClassName, + type = "default" +}: PasswordAccessPageProps) { + const { + from, + isNavigated, + ctaText: ctaTextFromLocationState + } = useLocationWithState(); + const navigate = useNavigate(); + const { + state: {hashedMasterkey}, + dispatch: dispatchAppState + } = useAppContext(); + const {formitoState, dispatchFormitoAction: dispatchCreatePasswordFormAction} = + useFormito(initialPasswordAccessForm); + + if (type === "default" && !hashedMasterkey) { + return ; + } + + return ( +
    +
    +
    {renderHeroIcon()}
    + + {type !== "embedded" && ( +

    + {title || "Unlock Pera Wallet"} +

    + )} + +

    + {description || "Enter your passcode to unlock your wallet"} +

    +
    + +
    + + } + revealIcon={formitoState.isDirty && } + infoIcon={ + formitoState.isDirty && + (formitoState.accessStatus === "error" ? ( + + ) : ( + + )) + } + onChange={onPasswordInputChange} + name={"password"} + /> + + + + + {hasCancelButton && ( + + )} +
    +
    + ); + + async function onAccessFormSubmit(event: SyntheticEvent) { + event.preventDefault(); + + const passwordFormData = new FormData(event.currentTarget); + const password = passwordFormData.get("password") as string; + + try { + // decrypt accounts and sessions immediately user enter the password + await syncIDB(password); + + if (onSubmit) { + onSubmit(); + } + + if (type === "default") { + navigate( + { + pathname: from?.pathname || ROUTES.OVERVIEW.ROUTE, + search: from?.search + }, + { + replace: true, + state: {isNavigated} + } + ); + } + } catch (error) { + dispatchCreatePasswordFormAction({ + type: "SET_FORM_VALUE", + payload: { + accessStatus: "error", + errorMessages: ["Incorrect passcode, please try again"] + } + }); + } + } + + async function syncIDB(masterkey: string) { + if (hashPassword(masterkey) !== hashedMasterkey) { + throw new Error("Incorrect password."); + } + + const accounts = await appDBManager.decryptTableEntries( + "accounts", + masterkey + )("address"); + const sessions = await appDBManager.decryptTableEntries("sessions", masterkey)("url"); + + dispatchAppState({type: "SYNC_IDB", payload: {accounts, sessions}}); + dispatchAppState({type: "SET_MASTERKEY", masterkey}); + } + + function onPasswordInputChange(event: React.SyntheticEvent) { + const password = event.currentTarget.value; + const newFormState: typeof initialPasswordAccessForm = { + ...initialPasswordAccessForm, + isDirty: !!password, + accessStatus: getPasswordAccessFormStatus(password) + }; + const shouldUpdateFormitoState = Object.entries(formitoState).some( + ([key, value]) => newFormState[key as keyof typeof formitoState] !== value + ); + + if (shouldUpdateFormitoState) { + dispatchCreatePasswordFormAction({ + type: "SET_FORM_VALUE", + payload: newFormState + }); + } + } + + function getPasswordAccessFormStatus(password: string) { + let accessFormStatus: typeof initialPasswordAccessForm["accessStatus"]; + + if (password) { + accessFormStatus = hashPassword(password) === hashedMasterkey ? "success" : "error"; + } + + return accessFormStatus; + } + + function renderHeroIcon() { + switch (formitoState.accessStatus) { + case "success": + return ; + + case "error": + return ; + + default: + return ; + } + } + + function handleCancelClick() { + if (onCancel) { + onCancel(); + } else { + navigate(-1 as unknown as To); + } + } +} + +export default PasswordAccessPage; diff --git a/src/password/page/access/_password-access-page.scss b/src/password/page/access/_password-access-page.scss new file mode 100644 index 0000000..2f3e995 --- /dev/null +++ b/src/password/page/access/_password-access-page.scss @@ -0,0 +1,109 @@ +@import "../../../core/ui/typography/typography-mixins"; + +.password-access { + display: flex; + flex-direction: column; + align-items: center; + justify-content: space-between; + + width: 424px; + + height: 100%; + flex: 1; + + &--connect-new-tab { + width: 100%; + + padding: 28px; + } + + &--embedded { + width: 100%; + height: 100%; + + .password-access__hero { + margin-top: 20px; + } + + .password-access__hero-icon { + margin-bottom: 16px; + padding: 16px 15px 7px; + + svg { + width: 42px; + height: 42px; + } + } + + .password-access__hero-description { + @include text-color--gray(); + + max-width: 228px; + + margin: 0 auto; + } + + .password-access__form { + justify-content: unset; + } + + .password-access__form-field { + width: 280px; + + margin-bottom: 38px; + } + } +} + +.password-access__hero { + flex-direction: column; + + margin: 36px 0 32px; +} + +.password-access__hero-icon { + margin-bottom: 32px; + padding: 33px 25px 10px; + + background: var(--white); + border-radius: 50%; + box-shadow: var(--shadow-large); +} + +.password-access__hero-title { + margin-bottom: 8px; +} + +.password-access__form { + display: flex; + flex-direction: column; + justify-content: space-between; + + width: 100%; + flex: 1; +} + +.password-access__form-field { + width: 360px; + + margin: 0 auto 86px; +} + +.password-access__form-field__input { + .input-container__right-icon { + display: block; + + width: 24px; + } +} + +.password-access__form-field__cta { + width: 100%; +} + +.password-access__form-field__cancel { + width: 100%; + height: 52px; + + margin-top: 4px; +} diff --git a/src/password/page/create/PasswordCreatePage.tsx b/src/password/page/create/PasswordCreatePage.tsx new file mode 100644 index 0000000..6ec806d --- /dev/null +++ b/src/password/page/create/PasswordCreatePage.tsx @@ -0,0 +1,223 @@ +import {ReactComponent as PasswordHiddenIcon} from "../../../core/ui/icons/password-hidden.svg"; +import {ReactComponent as PasswordVisibleIcon} from "../../../core/ui/icons/password-visible.svg"; +import {ReactComponent as CheckmarkIcon} from "../../../core/ui/icons/checkmark.svg"; +import {ReactComponent as WarningIcon} from "../../../core/ui/icons/warning.svg"; + +import "./_password-create-page.scss"; + +import {useEffect, useRef, useState} from "react"; +import {Location, Navigate, useNavigate} from "react-router-dom"; +import {FormField} from "@hipo/react-ui-toolkit"; +import classNames from "classnames"; + +import ROUTES from "../../../core/route/routes"; +import {useAppContext} from "../../../core/app/AppContext"; +import useFormito from "../../../core/util/hook/formito/useFormito"; +import {validatePasswordCreateForm} from "../../util/passwordUtils"; +import PeraPasswordInput from "../../../component/pera-password-input/PeraPasswordInput"; +import Button from "../../../component/button/Button"; +import {hashPassword} from "../../../core/util/nacl/naclUtils"; +import InfoBox from "../../../component/info-box/InfoBox"; +import {withGoBackLink} from "../../../core/route/context/NavigationContext"; +import {useSimpleToaster} from "../../../component/simple-toast/util/simpleToastHooks"; +import useLocationWithState from "../../../core/util/hook/useLocationWithState"; +import webStorage, {STORED_KEYS} from "../../../core/util/storage/web/webStorage"; + +const initialCreatePasswordForm = { + password: "", + passwordConfirmation: "" +}; + +type LocationState = { + from?: Location; +}; + +interface PasswordCreatePageProps { + type?: "default" | "connect"; +} + +function PasswordCreatePage({type = "default"}: PasswordCreatePageProps) { + const navigate = useNavigate(); + const {from} = useLocationWithState(); + const { + state: {hashedMasterkey: userHasKey}, + dispatch: dispatchAppState + } = useAppContext(); + const { + formitoState: {password, passwordConfirmation}, + dispatchFormitoAction: dispatchCreatePasswordFormAction + } = useFormito(initialCreatePasswordForm); + const simpleToaster = useSimpleToaster(); + const validationInfo = validatePasswordCreateForm(password, passwordConfirmation); + const passwordFormFieldClassname = classNames( + "password-create__form__password-form-field" + ); + const isButtonDisabled = + !password || + !passwordConfirmation || + validationInfo.password.length > 0 || + validationInfo.passwordConfirmation.length > 0; + const [isPasswordConfirmStarted, setPasswordConfirmStarted] = useState(false); + const hashedMasterKeyRef = useRef(userHasKey); + + useEffect( + // clean up formito state on unmount + () => () => + dispatchCreatePasswordFormAction({ + type: "SET_FORM_VALUE", + payload: {password: "", passwordConfirmation: ""} + }), + [dispatchCreatePasswordFormAction] + ); + + if (type === "default" && hashedMasterKeyRef.current) { + return ; + } + + return ( +
    +

    + {"Create a passcode"} +

    + + + + {"Learn more →"} + + + +
    + + } + revealIcon={password && } + infoIcon={ + password && + (validationInfo.password.length ? ( + + ) : ( + + )) + } + onChange={handleFieldChange} + name={"password"} + /> + + + + } + revealIcon={passwordConfirmation && } + infoIcon={ + passwordConfirmation && + (validationInfo.passwordConfirmation.length ? ( + + ) : ( + + )) + } + onChange={handleFieldChange} + name={"passwordConfirmation"} + /> + + + +
    + +

    + {"By creating an account, you agree to Pera Wallet’s "} + + + {"Terms and Conditions"} + + + {" and "} + + + {"Privacy Policy"} + +

    +
    + ); + + function onPasswordSubmit(event: React.SyntheticEvent) { + setPasswordConfirmStarted(true); + event.preventDefault(); + + try { + const hashedMasterkey = hashPassword(password); + + webStorage.local.setItem(STORED_KEYS.HASHED_MASTERKEY, hashedMasterkey); + + dispatchAppState({ + type: "SET_KEY", + keys: {masterkey: password, hashedMasterkey} + }); + + if (type === "default") { + navigate(from?.pathname || ROUTES.ACCOUNT.ROUTE); + } + } catch (error) { + console.error(error); + simpleToaster.display({ + type: "error", + message: "There is an error creating your account, please try again later." + }); + } finally { + setPasswordConfirmStarted(false); + } + } + + function handleFieldChange(event: React.SyntheticEvent) { + return dispatchCreatePasswordFormAction({ + type: "SET_FORM_VALUE", + payload: { + [event.currentTarget.name]: event.currentTarget.value + } + }); + } +} + +export default withGoBackLink(PasswordCreatePage, ROUTES.BASE); diff --git a/src/password/page/create/_password-create-page.scss b/src/password/page/create/_password-create-page.scss new file mode 100644 index 0000000..af15d92 --- /dev/null +++ b/src/password/page/create/_password-create-page.scss @@ -0,0 +1,98 @@ +.password-create { + position: relative; + + display: flex; + flex-direction: column; + + &--default { + width: 424px; + } + + &--connect { + width: 480px; + + padding: 28px; + } +} + +.password-create__title { + margin-bottom: 32px; +} + +.password-create__info-box { + margin-bottom: 24px; +} + +.password-create__info-box-link { + &:visited { + color: var(--text-main); + } +} + +.password-create__form { + position: relative; + + display: flex; + flex-direction: column; + align-items: stretch; + justify-content: center; +} + +.password-create__form__password-form-field { + margin-bottom: 24px; + + transition: margin-bottom var(--default-animation); + + &.form-field--has-error { + margin-bottom: 50px; + } +} + +.password-create__form__password-input { + .input-container__icon { + display: none; + + .password-input__info-icon { + margin-right: 8px; + } + + &:active { + display: block; + } + } +} + +.password-create__form__confirmation-form-field { + margin-bottom: 92px; +} + +.password-create__form__confirmation-input { + .password-input__info-icon { + margin-right: 8px; + } +} + +.password-create__form__cta { + width: 100%; +} + +.password-create__terms-and-conditions { + position: absolute; + bottom: -92px; + left: 0; + right: 0; + + width: 356px; + + margin: auto; + + text-align: center; +} + +.password-create__terms-and-conditions__link { + color: var(--helper-purple-default); + + &:visited { + color: var(--helper-purple-default); + } +} diff --git a/src/password/util/passwordUtils.test.ts b/src/password/util/passwordUtils.test.ts new file mode 100644 index 0000000..e263614 --- /dev/null +++ b/src/password/util/passwordUtils.test.ts @@ -0,0 +1,46 @@ +import { + CONFIRMATION_MESSAGE, + validatePasswordCreateForm, + VALIDATION_MESSAGE +} from "./passwordUtils"; + +const invalidPassword = "qwerty"; +const invalidPasswordConfirmation = "qwerty1"; +const validPassword = "StrongPassword1"; +const validPasswordConfirmation = "StrongPassword1"; + +describe("password utils", () => { + it("ValidationInfoFail", () => { + const testPassword = invalidPassword; + const testPasswordConfirmation = invalidPasswordConfirmation; + + const validationInfo = validatePasswordCreateForm( + testPassword, + testPasswordConfirmation + ); + const expectedValidationInfo = { + message: [VALIDATION_MESSAGE], + password: [VALIDATION_MESSAGE, VALIDATION_MESSAGE], + passwordConfirmation: [CONFIRMATION_MESSAGE] + }; + + expect(validationInfo).toEqual(expectedValidationInfo); + }); + + it("ValidationInfoPass", () => { + const testPassword = validPassword; + const testPasswordConfirmation = validPasswordConfirmation; + + const validationInfo = validatePasswordCreateForm( + testPassword, + testPasswordConfirmation + ); + const expectedValidationInfo = { + message: [VALIDATION_MESSAGE], + password: [], + passwordConfirmation: [] + }; + + expect(validationInfo).toEqual(expectedValidationInfo); + }); +}); diff --git a/src/password/util/passwordUtils.ts b/src/password/util/passwordUtils.ts new file mode 100644 index 0000000..a6521a6 --- /dev/null +++ b/src/password/util/passwordUtils.ts @@ -0,0 +1,43 @@ +const PASSWORD_VALIDATIONS: Record = { + letterRule: /[a-zA-Z]/, + numberRule: /[0-9]/g, + minLengthRule: /.{8,}/ +}; +const VALIDATION_MESSAGE = + "Minimum of 8 characters, at least 1 letter (A-Z) and 1 number (0-9)."; +const CONFIRMATION_MESSAGE = "Passwords do not match."; + +type PasswordCreateFormValidationInfo = Record< + "message" | "password" | "passwordConfirmation", + string[] +>; + +function validatePasswordCreateForm( + password: string, + passwordConfirmation: string +): PasswordCreateFormValidationInfo { + const validationInfo: PasswordCreateFormValidationInfo = { + message: [VALIDATION_MESSAGE] as string[], + password: [] as string[], + passwordConfirmation: [] as string[] + }; + + if (password !== passwordConfirmation && password && passwordConfirmation) { + validationInfo.passwordConfirmation.push(CONFIRMATION_MESSAGE); + } + + Object.values(PASSWORD_VALIDATIONS).forEach((rule) => { + if (!password.match(rule)) { + validationInfo.password.push(VALIDATION_MESSAGE); + } + }); + + return validationInfo; +} + +export { + validatePasswordCreateForm, + PASSWORD_VALIDATIONS, + VALIDATION_MESSAGE, + CONFIRMATION_MESSAGE +}; diff --git a/src/react-app-env.d.ts b/src/react-app-env.d.ts new file mode 100644 index 0000000..6431bc5 --- /dev/null +++ b/src/react-app-env.d.ts @@ -0,0 +1 @@ +/// diff --git a/src/send-txn/components/form/SendTxnForm.tsx b/src/send-txn/components/form/SendTxnForm.tsx new file mode 100644 index 0000000..920767d --- /dev/null +++ b/src/send-txn/components/form/SendTxnForm.tsx @@ -0,0 +1,211 @@ +import "./_send-txn-form.scss"; + +import algosdk, {Transaction} from "algosdk"; +import {SyntheticEvent, useEffect, useState} from "react"; +import {useNavigate} from "react-router-dom"; + +import Button from "../../../component/button/Button"; +import ROUTES from "../../../core/route/routes"; +import SendTxnAddressInput from "../input/address/SendTxnAddressInput"; +import SendTxnAmountInput from "../input/amount/SendTxnAmountInput"; +import SendTxnNoteTextArea from "../textarea/SendTxnNoteTextArea"; +import {useSendTxnFlowContext} from "../../context/SendTxnFlowContext"; +import {useSimpleToaster} from "../../../component/simple-toast/util/simpleToastHooks"; +import SendTxnAccountLink from "../link/account/SendTxnAccountLink"; +import SendTxnAssetLink from "../link/asset/SendTxnAssetLink"; +import {encodeString} from "../../../core/util/string/stringUtils"; +import {fractionDecimalToInteger, isALGO} from "../../../core/util/asset/assetUtils"; +import { + ALGORAND_ADDRESS_LENGTH, + ALGORAND_TXN_NOTE_MAX_LENGTH, + SEND_TXN_FORM_VALIDATION_MESSAGES +} from "../../util/sendTxnConstants"; +import algod from "../../../core/util/algod/algod"; +import {assetDBManager} from "../../../core/app/db"; + +const DEFAULT_MIN_ALGO_BALANCE = 100_000; + +function SendTxnForm() { + const navigate = useNavigate(); + const {display} = useSimpleToaster(); + const { + formitoState: { + senderAddress, + selectedAsset, + recipientAddress, + txnAmount, + txnNote, + minBalance: prefetchedMinBalance + }, + dispatchFormitoAction + } = useSendTxnFlowContext(); + const isSubmitButtonDisabled = !( + senderAddress && + recipientAddress && + recipientAddress.length === ALGORAND_ADDRESS_LENGTH && + txnAmount + ); + const [shouldDisplaySpinner, setShouldDisplaySpinner] = useState(false); + + // fetch min-balance of the account for max-button + useEffect(() => { + if (!senderAddress || prefetchedMinBalance) return; + + (async () => { + try { + const {"min-balance": minBalance} = (await algod.client + .accountInformation(senderAddress!) + .do()) as {"min-balance": number}; + + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: {minBalance} + }); + } catch (error) { + console.error(error); + } + })(); + }, [dispatchFormitoAction, prefetchedMinBalance, senderAddress]); + + // prefill `selectedAsset` if user has ALGO balance + useEffect(() => { + if (!senderAddress || selectedAsset) return; + + (async () => { + const accountAssets = await assetDBManager.getAllByAccountAddress(senderAddress); + + const accountAlgo = accountAssets.find(isALGO); + + // Newly created zero balanced accounts do not have ALGOs + if (accountAlgo) { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: {selectedAsset: accountAlgo} + }); + } + })(); + }, [dispatchFormitoAction, selectedAsset, senderAddress]); + + return ( +
    + + + + + + + + + + + + + ); + + async function handleNavigateTxnConfirmation(event: SyntheticEvent) { + event.preventDefault(); + + try { + setShouldDisplaySpinner(true); + const txnToSign = await prepareTxn(); + const message = validateTxn(txnToSign.fee); + + setShouldDisplaySpinner(false); + + if (message) { + display({ + type: "error", + message + }); + + return; + } + + dispatchFormitoAction({type: "SET_FORM_VALUE", payload: {txnFee: txnToSign.fee}}); + + navigate(ROUTES.SEND_TXN.CONFIRM.ROUTE); + } catch (error) { + display({ + type: "error", + message: "There is an error preparing your transaction, please try again later." + }); + } + } + + /** + * validate txn returns error message if txn is not valid + * returns undefined if txn is valid + * @returns {(string | undefined)} + */ + function validateTxn(txnFee: number): string | undefined { + if (!algosdk.isValidAddress(senderAddress!)) { + return SEND_TXN_FORM_VALIDATION_MESSAGES.INVALID_ADDRESS; + } + + const amount = fractionDecimalToInteger( + Number(txnAmount), + selectedAsset?.fraction_decimals + ); + const isAccountBalanceInsufficient = + Number(selectedAsset!.amount) < + (isALGO(selectedAsset!) + ? (prefetchedMinBalance || DEFAULT_MIN_ALGO_BALANCE) + txnFee + amount + : amount); + + if (isAccountBalanceInsufficient) { + return SEND_TXN_FORM_VALIDATION_MESSAGES.ACCOUNT_BALANCE; + } + + if (txnNote && encodeString(txnNote).length > ALGORAND_TXN_NOTE_MAX_LENGTH) { + return SEND_TXN_FORM_VALIDATION_MESSAGES.INVALID_TXN_LENGTH; + } + + return undefined; + } + + async function prepareTxn() { + let txnToSign: Transaction; + const isAssetTxn = selectedAsset && selectedAsset.name !== "ALGO"; + + // prepare txn parameters + const suggestedParams = await algod.client.getTransactionParams().do(); + let txnPayload: Parameters< + | typeof algosdk.makePaymentTxnWithSuggestedParamsFromObject + | typeof algosdk.makeAssetTransferTxnWithSuggestedParamsFromObject + >[0] = { + from: senderAddress!, + to: recipientAddress!, + amount: algosdk.algosToMicroalgos(Number(txnAmount!)), + suggestedParams, + note: encodeString(txnNote || "") + }; + + if (isAssetTxn) { + const assetAmount = + // eslint-disable-next-line no-magic-numbers + Number(txnAmount!) * Math.pow(10, selectedAsset.fraction_decimals); + + txnPayload = { + ...txnPayload, + amount: Math.round(assetAmount), + assetIndex: selectedAsset.asset_id + }; + txnToSign = algosdk.makeAssetTransferTxnWithSuggestedParamsFromObject(txnPayload); + } + // payment txn + else { + txnToSign = algosdk.makePaymentTxnWithSuggestedParamsFromObject(txnPayload); + } + + return txnToSign; + } +} + +export default SendTxnForm; diff --git a/src/send-txn/components/form/_send-txn-form.scss b/src/send-txn/components/form/_send-txn-form.scss new file mode 100644 index 0000000..8438336 --- /dev/null +++ b/src/send-txn/components/form/_send-txn-form.scss @@ -0,0 +1,15 @@ +.send-txn-form { + display: grid; + gap: 16px; + + width: 424px; + height: 534px; + + .form-field { + margin: 0; + } +} + +.send-txn-form__asset-img { + height: 20px; +} diff --git a/src/send-txn/components/input/address/SendTxnAddressInput.tsx b/src/send-txn/components/input/address/SendTxnAddressInput.tsx new file mode 100644 index 0000000..825a148 --- /dev/null +++ b/src/send-txn/components/input/address/SendTxnAddressInput.tsx @@ -0,0 +1,74 @@ +import "./_send-txn-address-input.scss"; + +import {useState} from "react"; +import {isValidAddress} from "algosdk"; +import {FormField, TypeaheadInput} from "@hipo/react-ui-toolkit"; + +import {useSendTxnFlowContext} from "../../../context/SendTxnFlowContext"; +import SelectableAccountList from "../../../../account/component/list/selectable/SelectableAccountList"; +import {usePortfolioContext} from "../../../../overview/context/PortfolioOverviewContext"; + +function SendTxnAddressInput() { + const {formitoState, dispatchFormitoAction} = useSendTxnFlowContext(); + const portfolioOverview = usePortfolioContext(); + const [filteredAccountList, setFilteredAccountList] = useState( + portfolioOverview?.accounts.filter( + (account) => account.address !== formitoState.senderAddress + ) || [] + ); + + return ( + + + + {filteredAccountList.length > 0 && + !isValidAddress(formitoState?.recipientAddress ?? "") && ( + + + + )} + + ); + + function handleOnAccountSelect(recipientAddress: string) { + setFilteredAccountList([]); + + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: { + recipientAddress + } + }); + } + + function handleAddressChange(value: string) { + const query = value.toLowerCase(); + const queriedAccounts = + portfolioOverview?.accounts.filter( + (account) => + account.address !== formitoState.senderAddress && + (account.address.toLowerCase().includes(query) || + (account?.accountName && account.accountName.toLowerCase().includes(query))) + ) || []; + + setFilteredAccountList(queriedAccounts); + dispatchFormitoAction({type: "SET_FORM_VALUE", payload: {recipientAddress: value}}); + } +} + +export default SendTxnAddressInput; diff --git a/src/send-txn/components/input/address/_send-txn-address-input.scss b/src/send-txn/components/input/address/_send-txn-address-input.scss new file mode 100644 index 0000000..01be82b --- /dev/null +++ b/src/send-txn/components/input/address/_send-txn-address-input.scss @@ -0,0 +1,67 @@ +.send-txn-address__input-label { + .input { + flex: 0 0 328px; + + overflow: hidden; + + white-space: nowrap; + text-overflow: ellipsis; + } +} + +.send-txn-address__input-label:focus-within { + .input { + flex-basis: 100%; + } + + .send-txn-address__my-accounts { + display: block; + } +} + +.send-txn-address__my-accounts { + position: absolute; + top: calc(100% + 4px); + left: -2px; + + z-index: var(--send-txn-select-account-z-index); + + display: none; + + width: calc(100% + 4px); + + max-height: 256px; + + padding: 0; + + border: none; + + box-shadow: var(--shadow-small); + + &:focus-within { + border: none; + box-shadow: none; + } + + .form-field__title { + margin: 0; + padding: 16px 14px 0; + } + + .form-field__label { + padding: 0; + } +} + +.send-txn-address__my-accounts-select { + .selectable-account-list__list { + max-height: 234px; + + background: var(--white); + + .list { + display: grid; + grid-gap: 32px; + } + } +} diff --git a/src/send-txn/components/input/amount/SendTxnAmountInput.tsx b/src/send-txn/components/input/amount/SendTxnAmountInput.tsx new file mode 100644 index 0000000..9bc01ba --- /dev/null +++ b/src/send-txn/components/input/amount/SendTxnAmountInput.tsx @@ -0,0 +1,212 @@ +import "./_send-txn-amount-input.scss"; + +import algosdk from "algosdk"; +import {SyntheticEvent, useEffect, useRef} from "react"; +import {FormField, NumberInput} from "@hipo/react-ui-toolkit"; + +import {useSendTxnFlowContext} from "../../../context/SendTxnFlowContext"; +import Button from "../../../../component/button/Button"; +import {isALGO} from "../../../../core/util/asset/assetUtils"; +import FormatUSDBalance from "../../../../component/format-balance/usd/FormatUSDBalance"; +import {formatNumber} from "../../../../core/util/number/numberUtils"; +import algod from "../../../../core/util/algod/algod"; +import {useSimpleToaster} from "../../../../component/simple-toast/util/simpleToastHooks"; +import useFormito from "../../../../core/util/hook/formito/useFormito"; +import {useAppContext} from "../../../../core/app/AppContext"; + +const AMOUNT_INPUT_DEFAULT_FRACTION_DIGITS = 2; + +interface AmountInputState { + dollarAmount?: number; + displayMaxButtonSpinner: boolean; +} + +function SendTxnAmountInput() { + const inputRef = useRef(null); + const { + state: {preferredNetwork} + } = useAppContext(); + const { + formitoState: { + exchangePrice, + senderAddress, + selectedAsset, + txnAmount, + txnFee, + minBalance: prefethcedMinBalance + }, + dispatchFormitoAction + } = useSendTxnFlowContext(); + const { + formitoState: {dollarAmount, displayMaxButtonSpinner}, + dispatchFormitoAction: dispatchAmountInputAction + } = useFormito({ + dollarAmount: undefined, + displayMaxButtonSpinner: false + }); + const simpleToaster = useSimpleToaster(); + + const shouldDisplayDollarAmount = + !!txnAmount && (!selectedAsset || isALGO(selectedAsset)); + const inputMaxFractionDigits = + selectedAsset?.fraction_decimals || AMOUNT_INPUT_DEFAULT_FRACTION_DIGITS; + const maxButtonAmountFormatter = formatNumber({ + useGrouping: false, + maximumFractionDigits: inputMaxFractionDigits, + minimumFractionDigits: 2 + }); + + useEffect(() => { + if ( + shouldDisplayDollarAmount && + exchangePrice && + exchangePrice !== 0 && + txnAmount && + Number(txnAmount) > 0 + ) { + // dynamically adjust input width to show dollar amount at the end of amount value + inputRef.current!.style.width = `${txnAmount?.length}ch`; + + const amountInUsd = exchangePrice! * Number(txnAmount); + + dispatchAmountInputAction({ + type: "SET_FORM_VALUE", + payload: {dollarAmount: amountInUsd} + }); + } else { + // hide approximate dollar amount and fix input width + inputRef.current!.style.width = `auto`; + } + }, [ + dispatchAmountInputAction, + dollarAmount, + exchangePrice, + selectedAsset, + shouldDisplayDollarAmount, + txnAmount + ]); + + return ( + + + + + + ); + + async function handleMaxButtonClick() { + let amount: string | number | undefined; + const minBalance = await getAccountMinBalance(); + + if (!minBalance || !selectedAsset) return; + + if (isALGO(selectedAsset)) { + const amountInMicroAlgos = Number(selectedAsset.amount) - txnFee - minBalance; + + if (amountInMicroAlgos >= 0) { + amount = algosdk.microalgosToAlgos(amountInMicroAlgos); + } else { + simpleToaster.display({ + type: "info", + message: + "Account has min balance, either fund your account or opt-out unused assets of yours." + }); + } + } else { + amount = maxButtonAmountFormatter( + Number(selectedAsset.amount) / + // eslint-disable-next-line no-magic-numbers + Math.pow(10, selectedAsset.fraction_decimals || 0) + ); + } + + if (amount && amount > 0) { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: {txnAmount: String(amount)} + }); + } + } + + // minBalance of selectedAccount is fetched after selecting account + // in case of error, minBalance is refetched here + async function getAccountMinBalance() { + if (prefethcedMinBalance) return prefethcedMinBalance; + + let minBalance; + + try { + toggleMaxButtonSpinner(); + + const accountInfo = (await algod.client + .accountInformation(senderAddress!) + .do()) as {["min-balance"]: number}; + + minBalance = accountInfo["min-balance"]; + } catch (error) { + simpleToaster.display({ + type: "error", + message: "There is an error calculating txn fee, please try again later" + }); + } finally { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: {minBalance} + }); + + toggleMaxButtonSpinner(); + } + + return minBalance; + } + + function handleInputChange(event: SyntheticEvent) { + dispatchFormitoAction({ + type: "SET_FORM_VALUE", + payload: {txnAmount: event.currentTarget.value} + }); + } + + function toggleMaxButtonSpinner() { + dispatchAmountInputAction({ + type: "SET_FORM_VALUE", + payload: {displayMaxButtonSpinner: !displayMaxButtonSpinner} + }); + } +} + +export default SendTxnAmountInput; diff --git a/src/send-txn/components/input/amount/_send-txn-amount-input.scss b/src/send-txn/components/input/amount/_send-txn-amount-input.scss new file mode 100644 index 0000000..a6b4fbc --- /dev/null +++ b/src/send-txn/components/input/amount/_send-txn-amount-input.scss @@ -0,0 +1,26 @@ +.send-txn-amount__max-button { + position: absolute; + + top: 50%; + right: 20px; + + transform: translateY(-50%); +} + +.send-txn-amount__input-container { + display: grid; + + grid-template-columns: max-content 1fr; + grid-gap: 2px; + + grid-auto-flow: column; +} + +.send-txn-amount__usd-value { + margin-left: 2px; +} + +.send-txn-amount__value-placeholder { + display: flex; + align-items: center; +} diff --git a/src/send-txn/components/link/SendTxnLink.tsx b/src/send-txn/components/link/SendTxnLink.tsx new file mode 100644 index 0000000..aac14bb --- /dev/null +++ b/src/send-txn/components/link/SendTxnLink.tsx @@ -0,0 +1,81 @@ +import "./_send-txn-link.scss"; + +import {ReactComponent as ChevronRightIcon} from "../../../core/ui/icons/chevron-right.svg"; + +import {Link, To} from "react-router-dom"; +import classNames from "classnames"; + +import {trimAccountName} from "../../../account/util/accountUtils"; + +export interface SendTxnLinkProps { + to: To; + content: { + label: string; + name: string; + icon?: React.ReactNode; + placeholder?: string; + }; + options?: { + description?: React.ReactNode; + placeholder?: React.ReactNode; + }; + isDisabled?: boolean; + customClassName?: string; +} + +function SendTxnLink({ + to, + content: {label, name, icon, placeholder}, + options = {}, + isDisabled = false, + customClassName +}: SendTxnLinkProps) { + const {description, placeholder: descriptionPlaceholder} = options; + const sendTxnLinkClassnames = classNames( + "typography--button form-field send-txn-link", + customClassName, + { + "send-txn-link--disabled": isDisabled + } + ); + + return ( + +
    +

    + {label} +

    + + {name && ( +
    + {icon || null} + +

    {trimAccountName(name)}

    +
    + )} + + {!name && placeholder && ( +

    + {placeholder} +

    + )} +
    + + {!isDisabled && ( +
    + {description && ( +
    {description}
    + )} + + {!description && descriptionPlaceholder && ( +
    {descriptionPlaceholder}
    + )} + + +
    + )} + + ); +} + +export default SendTxnLink; diff --git a/src/send-txn/components/link/_send-txn-link.scss b/src/send-txn/components/link/_send-txn-link.scss new file mode 100644 index 0000000..8238936 --- /dev/null +++ b/src/send-txn/components/link/_send-txn-link.scss @@ -0,0 +1,29 @@ +.send-txn-link { + display: flex; + align-items: center; + justify-content: space-between; + + color: currentColor; + + &:visited { + color: inherit; + } + + &--disabled { + background: var(--background); + + cursor: not-allowed; + + pointer-events: none; + } +} + +.send-txn-link__name-row { + gap: 8px; + + margin-top: 4px; +} + +.send-txn-link__description-container { + gap: 16px; +} diff --git a/src/send-txn/components/link/account/SendTxnAccountLink.tsx b/src/send-txn/components/link/account/SendTxnAccountLink.tsx new file mode 100644 index 0000000..d6cff57 --- /dev/null +++ b/src/send-txn/components/link/account/SendTxnAccountLink.tsx @@ -0,0 +1,54 @@ +import {ReactComponent as AccountDefaultIcon} from "../../../../core/ui/icons/account-default.svg"; + +import {useAppContext} from "../../../../core/app/AppContext"; +import ROUTES from "../../../../core/route/routes"; +import {ALGO_UNIT} from "../../../../core/ui/typography/typographyConstants"; +import {useSendTxnFlowContext} from "../../../context/SendTxnFlowContext"; +import SendTxnLink from "../SendTxnLink"; +import {defaultPriceFormatter} from "../../../../core/util/number/numberUtils"; +import FormatUSDBalance from "../../../../component/format-balance/usd/FormatUSDBalance"; +import {usePortfolioContext} from "../../../../overview/context/PortfolioOverviewContext"; + +function SendTxnAccountLink() { + const { + state: {accounts} + } = useAppContext(); + const { + formitoState: {senderAddress} + } = useSendTxnFlowContext(); + const portfolioOverview = usePortfolioContext(); + const {algoFormatter} = defaultPriceFormatter(); + const selectedAccountDetails = portfolioOverview!.accounts.find( + (account) => account.address === senderAddress + ); + + return ( + , + placeholder: "Not Selected" + }} + options={{ + description: selectedAccountDetails && ( +
    + + +

    + {ALGO_UNIT} + {algoFormatter(Number(selectedAccountDetails.total_algo_value))} +

    +
    + ), + placeholder: "Select account" + }} + /> + ); +} + +export default SendTxnAccountLink; diff --git a/src/send-txn/components/link/asset/SendTxnAssetLink.tsx b/src/send-txn/components/link/asset/SendTxnAssetLink.tsx new file mode 100644 index 0000000..ff7a736 --- /dev/null +++ b/src/send-txn/components/link/asset/SendTxnAssetLink.tsx @@ -0,0 +1,43 @@ +import Tooltip from "../../../../component/tooltip/Tooltip"; +import ROUTES from "../../../../core/route/routes"; +import {getAssetImgSrc} from "../../../../core/util/image/imageUtils"; +import {useSendTxnFlowContext} from "../../../context/SendTxnFlowContext"; +import SendTxnLink from "../SendTxnLink"; +import {formatASAAmount} from "../../../../core/util/asset/assetUtils"; +import AssetLogo from "../../../../asset/components/logo/AssetLogo"; + +function SendTxnAssetLink() { + const { + formitoState: {senderAddress, selectedAsset} + } = useSendTxnFlowContext(); + + return ( + + + ), + placeholder: "Not Selected" + }} + options={{ + description: selectedAsset ? formatASAAmount(selectedAsset) : "", + placeholder: "Select asset" + }} + isDisabled={!senderAddress} + /> + + ); +} + +export default SendTxnAssetLink; diff --git a/src/send-txn/components/textarea/SendTxnNoteTextArea.tsx b/src/send-txn/components/textarea/SendTxnNoteTextArea.tsx new file mode 100644 index 0000000..7022f8b --- /dev/null +++ b/src/send-txn/components/textarea/SendTxnNoteTextArea.tsx @@ -0,0 +1,32 @@ +import "./_send-txn-note-textarea.scss"; + +import {SyntheticEvent} from "react"; +import {FormField, Textarea} from "@hipo/react-ui-toolkit"; + +import {useSendTxnFlowContext} from "../../context/SendTxnFlowContext"; + +function SendTxnNoteTextArea() { + const {formitoState, dispatchFormitoAction} = useSendTxnFlowContext(); + + return ( + +